记录每个操作的良好设计模式

时间:2014-01-28 00:11:58

标签: java design-patterns domain-driven-design observer-pattern

记录或记录系统内部完成的每项操作(业务逻辑)的好设计模式是什么?

假设我想写一个小日志或通知用户每个操作?例如,在系统中,您可以为您的房屋订购清洁服务,我想在每个步骤后给用户反馈:

  

订购清洁服务> 正在进行清洁> 清洁已完成

我在想Observer模式,但我有点困惑。感谢。

2 个答案:

答案 0 :(得分:3)

如果您希望每次/事情/事情都要记录,那么这就是所谓的交叉问题。通过这个我的意思是发生/在正常操作之外的事情 - 它发生在任何地方。看看Aspecxt定向编程(AOP) - 日志记录是一个经典的AOP问题。 http://en.wikipedia.org/wiki/Aspect-oriented_programming了解更多信息。

答案 1 :(得分:2)

你想要的东西被认为是一个贯穿各领域的关注点。看看面向方面的编程。您可以编写在方法调用上执行的代码,您可以根据语义java签名选择方法调用。

这会将您的日志记录问题与业务逻辑问题分离开来。您应该在AspectJ文档中找到一些直接的示例。

http://eclipse.org/aspectj/doc/released/progguide/starting-development.html#profiling-and-logging