我想做个系统实现日志 用ssh我想实现日志的记录 例如 哪个用户在哪个时间操作了哪些事情 是否成功 如果出错也记录下来 改怎么做 并且记录sql语句比如: admin在2009-12-21 12:12:21调用了UserService的add(User user)方法 sql语句:insert into user values('a','b')操作成功 我知道得用aop 关键是在struts中做还是在hibernate还是在哪做 应该怎么获取上面的那些内容
高手指教 最好给个源码 感谢
高手指教 最好给个源码 感谢
是用log4j但是怎么实现我说的那些功能呢 我要用aop
我会用aop
package com.fckeji.sqrm.log;import java.lang.reflect.Method;
import java.util.Arrays;
import java.util.Date;import org.springframework.aop.MethodBeforeAdvice;
import org.springframework.stereotype.Component;@Component("logAdvisor")
public class LogAdvisor implements MethodBeforeAdvice{ public void before(Method method, Object[] args, Object target)
throws Throwable {
System.out.println(method.getName()+"在"+(new Date())+"被调用 参数为"+Arrays.toString(args));
}}这里获取不到request session 什么的信息等 我只是想了解了解大家是怎么写的
说白了就是在你请求的方法前,或者后,或者左右,或者返回值后执行的一些增强处理。
那么你所需要记录的log功能,就是增强处理。我们也叫advice。
所以我们最终请求的方法会变成一个:
增强处理
-------
请求方法
-------
增强处理
这样的一个代理类。
2.明白这点之后,我们就需要编写个增强处理类。用于处理log记录功能。
然后通过配置文件配置一下切入点就行了。建议看下spring的AOP很基础的部分,写个记录log功能应该比较简单
希望对楼主有用
good luck