#java #jsf
#java #jsf
Вопрос:
Мой файл приложения (EAR) состоит из комбинации EJB и WAR. Фреймворк — это JSF, а IDE — Netbeans 6.9.1 сервер приложений — glassfich версии V2.x. Я хочу рассчитать время выполнения для каждого вызываемого метода в моем приложении. я просмотрел так много блогов. большинство из них предлагали использовать AOP. но никто не говорит мне, как настроить и как использовать его в моем приложении. может ли кто-нибудь рассказать мне об этом. Если у вас есть какие-либо дополнительные подробности, чтобы ответить на это, я предоставлю.
Ответ №1:
Если вы пытаетесь выполнить AOP на Java, вы, вероятно, ищете AspectJ . ( http://eclipse.org/aspectj / ) Это сложно, но будет делать именно то, о чем вы просите, и есть много книг на эту тему. (Я рекомендую вам прочитать один — это действительно так сложно)
В качестве альтернативы, если ваше приложение использует Weld / CDI, вы можете использовать альтернативу, которая немного проще, называемую перехватчиками: http://docs.jboss.org/weld/reference/1.0.0/en-US/html/interceptors.html
Я бы не стал рекомендовать вам использовать weld для получения поддержки Interceptor, но это, вероятно, быстрее, чем изучение AspectJ с нуля.
Комментарии:
1. Если вы не возражаете, можете потратить некоторое время на обсуждение этой темы завтра
2. Это не то, что чтение того, что я печатаю, решит для вас. То, о чем вы просите, — это сложное бизнес-решение, которое вам необходимо полностью изучить. Пожалуйста, прочтите документацию как Weld, так и AspectJ, хотя бы бегло, и определите, какие из них вы будете использовать, исходя из компромиссов каждого. (Если вы уже используете Spring, это, кстати, немного упрощает AspectJ — поддержка транзакций в Spring осуществляется с помощью AspectJ)
Ответ №2:
Существует множество приложений с профилем JVM. Взгляните на что-то вроде JProbe.
Комментарии:
1. Для этого я должен написать код. Я не должен использовать сторонние инструменты
2. Я использовал AspectJ для этого и его работы тоже. спасибо всем за ваши ценные предложения.