我有一個彈簧支架應用,在那裏我有在前面彈簧安置控制器,春季服務在服務背後中部和春天JPA庫。剩下的控制器只是將請求委託給服務層。現在,問題是,我可以在服務層或控制器層記錄任何問題或信息消息,或者我可以保持它們都是乾淨的,並使用aop方法來捕獲數據並將其記錄到日誌文件中。 我無法決定什麼是最好的方法,爲什麼。請給我一些建議,如果你有任何。謝謝。記錄和彈簧安置MVC應用程序
-1
A
回答
2
解決這個問題的常用方法是在每個單獨的圖層中都有一個類的實例Logger。
的爲例:
public class EmployeeService {
private Logger logger = LoggerFactory.getLogger(EmployeeService.class);
}
public class EmployeeController {
private Logger logger = LoggerFactory.getLogger(EmployeeController.class);
}
- 的代碼更加乾淨
- 你有possibilty做類方法裏的日誌,知道AOP計算策略不允許這樣做。
1
使用AOP方法,你要知道,新的額外的類將與提供日誌記錄功能集成到自己的類額外的邏輯來創建。而這些新的類(代理)將被用來代替你的。這種方法有一些問題,例如,當一個註釋爲寫入日誌的方法調用另一個也以類似的方式註釋的方法時 - 在這種情況下,第二種方法不會寫入日誌。
根據性能兩種方法都只是使用AOP在內存中更多的類非常相似。
此外,使用AOP你的方法調用之前或之後,可以只是做一個記錄,但如果您需要登錄的方法裏面的東西?
我建議用簡單的方法和類申報記錄。在這種情況下,您的代碼將更易於理解,並且您將擁有更好的靈活性。
1
對於每個類的用戶自己的記錄器對象來說,這是很好的方法,首先您肯定知道日誌初始化的位置,然後您可以靈活地配置日誌記錄過程。
相關問題
- 1. 沒有彈簧的web應用程序的彈簧配置MVC
- 2. Android應用程序的彈簧安全
- 3. 如何禁用彈簧應用程序登錄安全?
- 4. jsf 2彈簧應用程序日誌記錄特定事件
- 5. 彈簧mvc +彈簧安全,404登錄後
- 6. 在彈簧mvc應用程序中設置日期
- 7. 如何在Web應用程序中配置彈簧安全性?
- 8. 在應用程序之間共享彈簧安全配置
- 9. 使用Log4j2記錄彈簧
- 10. 彈簧安全和單頁面應用程序
- 11. 如何使用彈簧引導和彈簧安全性配置彈簧4.0 openId
- 12. 彈簧安置405
- 13. 記錄彈簧(引導)配置屬性
- 14. 如何測試彈簧安全的彈簧應用程序中的REST
- 15. 安裝彈簧安全插件的Grails應用程序失敗
- 16. ajax登錄彈簧webMVC和彈簧安全
- 17. 彈簧安全2.0.7和彈簧2.5的登錄表單問題
- 18. 記得我彈簧安全
- 19. Angular2與彈簧靴和彈簧安全
- 20. 彈簧啓動和彈簧安全4.0
- 21. 如何讓jsp的彈簧應用程序線程安全?
- 22. 休眠和mysql登錄彈簧安全
- 23. mvc彈簧啓動和自動配置
- 24. 創建自動配置彈簧庫以彈簧啓動應用程序
- 25. 基於彈簧配置文件的彈簧引導應用程序屬性
- 26. 彈簧啓動應用程序中的彈簧庫配置出錯
- 27. 彈簧mvc瓷磚配置
- 28. 彈簧MVC標籤配置
- 29. 使用iOS應用程序的彈簧安全認證
- 30. 「Hystrix流不會生成我的彈簧mvc應用程序」