Это обсуждается в ?proc.time
(system.time()
возвращает объект класса "proc.time"
):
Details:
‘proc.time’ returns five elements for backwards compatibility, but
its ‘print’ method prints a named vector of length 3. The first
two entries are the total user and system CPU times of the current
R process and any child processes on which it has waited, and the
third entry is the ‘real’ elapsed time since the process was
started.
.... и
Value:
....
The definition of ‘user’ and ‘system’ times is from your OS.
Typically it is something like
_The ‘user time’ is the CPU time charged for the execution of user
instructions of the calling process. The ‘system time’ is the CPU
time charged for execution by the system on behalf of the calling
process._
JSTL и EL являются двумя отличными понятиями.
JSTL является всего одной библиотекой тегов. Большинство платформ обеспечивает свой собственный taglib, который приблизительно копирует функциональность JSTL. Я говорю приблизительно, потому что они часто неправильно используют или пропускают ключевые принципы JSP и API Сервлета.
сила JSTL состоит в том, что он был разработан авторами JSP с основательным пониманием JSP и сервлетов. Сторонние taglibs часто создаются некоторым парнем, который не хотел прочитайте руководство и решенный, чтобы "запуститься с нуля" и придумать "что-то более простое". Однако JSTL не был предназначен, чтобы сделать все. Это может использоваться очень успешно в сочетании с другим taglibs, включая Ваши собственные теги.
язык Выражения фундаментален для JSP. Это интерпретируется контейнером и может использоваться во многих контекстах. Это - также в основном бесплатный побочный эффект, и имеет простой, легко понятный синтаксис, который не позволяет большой логике быть наполненной на уровень представления. Будучи частью спецификации EE Java, это также пользуется широкой поддержкой инструмента. Например, много IDE могут осуществить рефакторинг зависимое выражение EL при переименовании свойства.
Struts2 представил OGNL более широкой аудитории. OGNL является возвратом к злым дням scriptlets. Это более мощно, и таким образом, разработчики счастливо злоупотребляют им для вызова произвольных методов на уровне представления и других злодеяниях. Взломщики счастливо используют его также; это - общий источник уязвимости в находящихся в Struts2 приложениях.
я был знаком с OGNL с лет предыдущего опыта с WebWork, и мое самое большое разочарование в Struts2 было отказом выбросить за борт этот dreck. Даже основатель WebWork, Patrick Lightbody, подтверждает, что принятие было ошибкой.* К счастью, это может только использоваться в ограниченных контекстах, как OGNL-осведомленные теги (и некоторые другие удивительные места), в отличие от EL, который поддерживается самим контейнером и может использоваться где угодно на странице.
, Если Вы хотите убежать от JSP, но не в компонентно-ориентированный подход как JSF, Вы могли бы проверить Terrence Parr проект StringTemplate. Фокусом там должен быть side-effect– свободный, который дает ценные улучшения безопасности и масштабируемости.
* QFT: После успешного нападения на находящийся в Struts2 сайт разработчиков Apple сказал Patrick Lightbody, "К сожалению, я чувствую некоторую ответственность за эту довольно главную дыру в системе безопасности. Там были несколько похожи на это, и они все базированы в том, что почти 9 лет назад я принял (плохое) решение использовать OGNL в качестве языка выражения WebWork. Я сделал так, потому что это было 'мощно', но это открыло все виды дополнительного обязательного обмана, который я никогда не предназначал".
Я использовал скорость с большим успехом, и она работает отлично как простой способ разделить бизнес-логику от логики представления. И это достаточно просто, что Ваш средний веб-разработчик может понять его. Freemarker является другой альтернативой шаблонной обработки что много людей как, также.
JSTL является библиотекой тегов, содержащей логические функции, которые могут использоваться в странице JSP. Другие такие библиотеки также существуют, но по всей вероятности Вы хотите посмотреть на пересмотренные подходы к целому jsp/jstl решению.
Прежде всего я рекомендовал бы смотреть на:
Калитка Apache
JSF с Google Web Toolkit (GWT)
facelets
JSTL поощряет Вас помещать логику в свой UI. Попробуйте Калитку Apache вместо этого, где логика сделана в Java.
Принятие Вы ищете более легкий способ разработать приложение с помощью MVC, который я настоятельно рекомендовал бы рассмотрению Платформа Spring . Spring имеет свой собственный lib тега, который обеспечивает большую часть того, в чем необходимо нуждаться в JSPs. Я имел большой успех с помощью Spring webflow наряду с lib тега форм Spring. Мне нравится делиться, приложение на слой персистентности (использующий поддержку ORM Spring В спящем режиме), уровень служб (бизнес-логика) и слой представления. Слой представления включает веб-потоки, JSPs и POJOs для проверок и действий. Я также использовал DWR в слое представления для вызовов Ajax.
Я не скажу, что они - замена или альтернатива, но я думаю , Поверхности сервера Java идут шаг вперед в разделительном представлении от логики...