【发布时间】:2012-09-06 14:22:27
【问题描述】:
在尊重3-tier architecture 的网络应用程序中,谁负责实现用户日志记录模块:表示层还是应用程序层?
我问这个问题是因为用户日志模块实际上并不是应用程序逻辑层的一部分,但也不是演示层的一部分。
【问题讨论】:
-
用户记录究竟是什么意思?
标签: java web-applications logging 3-tier
在尊重3-tier architecture 的网络应用程序中,谁负责实现用户日志记录模块:表示层还是应用程序层?
我问这个问题是因为用户日志模块实际上并不是应用程序逻辑层的一部分,但也不是演示层的一部分。
【问题讨论】:
标签: java web-applications logging 3-tier
日志记录是横切关注点,因此不属于任何一层。我建议您尽可能避免创建日志记录模块。它不太可能增加任何价值,只会复制现有的日志框架。只需始终使用 SLF4J 之类的东西。
【讨论】:
记录异常有助于识别和消除编程逻辑中的缺陷。什么是应用程序缺陷的最佳判断应该是实际方法本身。视图层应该只显示信息;它不应该负责弄清楚什么是编程逻辑缺陷,什么不是编程逻辑缺陷。因此,将是逻辑层(模型/控制器,在 mvc 用语中)。
【讨论】: