【问题标题】:Intercept write action and generate user log拦截写操作并生成用户日志
【发布时间】:2011-04-29 14:36:11
【问题描述】:

我想记录在我的 Web 应用程序中更改域的每个用户操作。当用户尝试创建、更新、删除某些数据时,必须将操作保存到用户日志中。但是当用户操作是列表时,生成报告。它不需要记录。

我当前的程序,我写服务日志。并将该服务日志调用到每个操作方法(performCreate、performUpdate、performDelete)

有没有办法创建一个类来编写用户日志来拦截所有执行的写操作?

编辑: 我使用 Struts 1.x

【问题讨论】:

    标签: jakarta-ee struts servlet-filters


    【解决方案1】:

    您可以使用Aspect Oriented Programmingaspectj 中的简单解决方案如下所示:

     public aspect Logger {
    
        pointcut writeActions():
            execution (* *.perform*(..));
    
        void before(): writeActions(){
            // log the action 
        }
    
    }
    

    您还可以在方法执行之前或之后访问方法参数、获取返回值和执行代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-16
      • 1970-01-01
      • 2011-06-22
      相关资源
      最近更新 更多