页面记录的设计模式

时间:2014-11-10 22:19:18

标签: java design-patterns

我正在使用spring创建我的网站。 我正在考虑实现一个好的设计模式来记录每个页面命中的数据。 这些日志对于识别用户模式等非常重要。 每个页面命中都需要记录一组常用参数,但除了常用参数外,每个页面都有不同的参数要记录。

我在考虑应该采用什么样的设计模式来实现这个目标?

我想过使用stratergy Pattern但我实际上并不喜欢它。

例如。参数A,B,C是常见的,除了这些我的    搜索页面日志F,G,H    浏览页面日志I,J,K

public interface CommonParameters {
    void logCommonParameters(String a, String b, String c);
}

public interface SearPageParameters inherits CommonParameters {
    void logSearchParameters(String F, String G, String H);
}

public interface BrowsePageParameters inherits CommonParameters {
    void logBrowsePageParameters(String I, String J, String K);
}

public class LogHelper {
    CommonParameters commonParameters;
}

但是这需要类来实现BrowsePageParameters,以便我可以在LogHelper中实例化它。 我不想为每个页面创建一个类。 关于我应该遵循什么设计模式的任何建议?

1 个答案:

答案 0 :(得分:0)

尝试阅读一些interceptor :)并将一些内容放入web.xml的配置中。 http://viralpatel.net/blogs/spring-mvc-interceptor-example/

http://docs.spring.io/spring/docs/current/spring-framework-reference/html/mvc.html#mvc-handlermapping-interceptor

您的代码将更加清晰,解决方案更加优雅。