Нет стандартного Java-класса или метода, который будет делать то, что вы хотите. Ваши варианты включают в себя:
eval
метод, отправьте это компилятору Java, а затем загрузите полученный скомпилированный класс. Первый подход, вероятно, самый простой. Второй и третий подходы представляют собой потенциальный риск для безопасности, если вы получите выражение для оценки от ненадежного пользователя. (Думайте, что код инъекции.)
Chris, очень удобное сообщение.
Многие, кто предлагает недостаток производительности, выводят, что код, обработанный в веб-приложении, является некоторыми, как различный/нижний от кода обработал в стандартном рабочем процессе. Основной код вводит, возможно, отличающийся, и уверенный, что Вам будет нужен интерпретатор MSIL, но MS показал во многих случаях, что Вы будете на самом деле видеть, что производительность увеличивается во времени выполнения.NET по собственному.
также мудро рассмотреть, как IIS должен быть "мастером на все руки" - позволяющий все виды конфигурации и переопределяет даже на статических файлах . Некоторые из тех разработаны для увеличения производительности (кэширование, сжатие) и - действительно - будет потерян, если Вы не повторно реализуете их в своем коде, но многие из них для других целей и никогда не могут использоваться. Если Вы создаете для своих потребностей (только) Вы можете проигнорировать те другие части и должны понимать некоторое преимущество производительности, даже при том, что существует потенциальный недостаток ASP.NET.
В моем (non-.NET) MVC тестирование я вижу значительный (10x или больше) выигрыши в производительности по веб-формам. Даже если бы был маленький хит на статическом содержании - который не был бы жесткой таблеткой для глотания.
я не удивлен, что различие почти незначительно в Ваших тестах, но я рад видеть, что оно создало резервную копию.
ПРИМЕЧАНИЕ: можно отключить подстановочный знак, отображающийся из статических каталогов (я сохраняю все статические файлы в / помехах / (pics|styles |...)) в IIS. Переключите папку на приложение, удалите подстановочное отображение и переключите его назад с приложения и - voilГ - статические файлы обрабатываются IIS, не приставая к Вашему ASP.NET.
Я искал сравнительный тест как это в течение долгого времени. Спасибо!
В моей компании мы сделали подстановочный знак, отображающийся на нескольких веб-сайтах (стандартные веб-формы, .net1.1 и 2, iis6), и sys администраторы сказали мне, что они не сделали заметил любые проблемы производительности.
, Но, это кажется Вами подчеркнутая сеть, не сервер. Таким образом, возможно, очки так подобны потому что сетевое узкое место? Просто размышление...
Я думаю, что существует несколько дополнительных вещей проверить:
Это - вполне впечатляющее сообщение там, большое спасибо за это.
Мы также оцениваем проблемы безопасности и проблемы производительности с удалением части программного обеспечения, это всегда существовало для отфильтровывания нежелательного трафика.
Будет там дальнейшим сравнительным тестированием с Вашей стороны?
Удачи,
Karl.