spring aop 日志 参数

初学spring AOP ,用AOP做系统日志,用

Object[] args = joinPoint.getArgs();

for(int i=0;i<args.length;i++){

System.out.println(args[i]);

}

获取被AOP的方法

save*方法

public int savepost(Post post)
{

this.postdao.save(post);

}

System.out.println(args[i]);

打印 出来的都是 org.bc.ss.Post@34123

可是我想在日志里面保存 post.getname()的属性怎么弄啊?
不能这样System.out.println((POst)args[i].getname());
因为有好多类型的save*方法。如saveEmp()

不知道我说明白没有?

是获取对象中叫name属性的值吗?用反射呀。
[code="java"]
Field field = args[i].getClass().getDeclaredField("name");
if (field != null) {
System.out.println(field.get(args[i]));
}
[/code]

[code="java"]
Object[] args = joinPoint.getArgs();

for(int i=0;i<args.length;i++){

if(args[i] instanceof Post){
Post p=(Post)args[i];
System.out.println(p.getName());
}

}

[/code]