使用AOP处理日志
一、日志在系统中的应用
日志:用来记录系统中的所有访问(操作);比如:谁什么时候操作了什么内容。
记录的方式:在控制台显示日志信息;在磁盘文件中记录日志信息;通过数据库存储;大数据做存储分析。
二、项目中日志的处理
通过数据库的方式存储日志信息
1.日志的数据库表的设计
编号 | 字段名 | 描述信息 |
---|---|---|
1 | log_id | 主键 |
2 | admin_id | 登录系统的用户的id |
3 | log_date | 系统当前时间,默认值sysdate();表示在这个时间做日志记录 |
4 | log_content | 日志内容:比如查询所有数据,删除了数据… |
5 | log_type | 日志类型:比如删除、修改、添加、查询 |
6 | log_ip | 客户端的ip地址 |
2.在哪里做日志记录:一般在service层完成日志记录
3.怎么做日志记录:通过AOP
的思想完成日志记录
需要切入点;需要定义增强处理
a.切入点:通过@Annotation表达式完成,这个表达式需要一个注解===》可以自己定义一个注解
b.在增强处理方法里面,获取到被代理方法上面的注解,从而获取到注解中的属性值。
4.代码:
- 创建数据库表
- 创建实体类
- 创建dao
- 定义注解
- 定义增强处理;做编织处理;在增强处理里面把数据调用dao添加到数据库中。
数据库表结构:自定义注解:
在service层进行日志处理的方法上添加自定义的注解:
定义增强处理
获取客户端真实的ip地址: