SpringBoot和@Aspect实现自建Log日志功能
Posted 写程序的小王叔叔
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot和@Aspect实现自建Log日志功能相关的知识,希望对你有一定的参考价值。
主页:写程序的小王叔叔的博客欢迎来访
支持:点赞收藏关注
一、效果
二、技术
JDK1.8+
SpringBoot2.0+ 、@Aspect注解
mysql5.6+
三、代码干货
Log实体对象类.java
package *****.***.***.modules.sys.log.entity;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import org.springframework.stereotype.Component;
import io.swagger.annotations.ApiModelProperty;
(name = "sys_log")
.hibernate.annotations.Table(comment="系统日志信息", appliesTo = "sys_log")
public class SysLog implements Serializable
private static final long serialVersionUID = 42L;
("主键")
(name="id",nullable = false,columnDefinition = "bigint(64) comment 主键")
private Long id;// 主键Id
("日志编号")
(name="log_id",columnDefinition = "varchar(255) comment 日志编号" )
private String logId;//日志编号
("请求链接")
(name="url",columnDefinition = "text comment 请求链接" )
private String url;//请求链接
("请求方法")
(name="method",columnDefinition = "text comment 请求方法" )
private String method;//请求方法
("请求类名")
(name="class_name",columnDefinition = "text comment 请求类名" )
private String className;//请求方法
("请求方法名")
(name="method_name",columnDefinition = "text comment 请求方法名" )
private String methodName;//请求方法
("请求参数")
(name="params",columnDefinition = "text comment 请求参数" )
private String params;//请求参数
("日志类型:(1:系统日志2:业务日志)")
(name="lot_type",columnDefinition = "varchar(255) comment 日志类型:(1:系统日志2:业务日志)" )
private String logType;//请求方法
("请求方式:(GET/POST)")
(name="type",columnDefinition = "varchar(255) comment 请求方式(GET/POST)" )
private String type;//请求方法
("请求IP")
(name="IP",columnDefinition = "text comment 请求IP" )
private String ip;//请求方法
("操作的数据库表")
(name="log_table",columnDefinition = "varchar(255) comment 操作的数据库表" )
private String table;//操作的数据库表
("请求异常")
(name="log_error",columnDefinition = "text comment 请求异常" )
private String logError;//请求异常
("运行时长")
(name="time",columnDefinition = "varchar(255) comment 运行时长" )
private long time;//
("备注")
(name="log_comment",columnDefinition = "text comment 备注" )
private String logComment;//备注
("创建人")
(name="create_by" )
private String createBy;//创建人
("创建时间")
(name="create_time" )
private Date createTime;//创建时间
//setter()/getter();
四、基本的CRUD
package ****.****.****.modules.sys.log.controller;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.AOP统一日志打印处理Springboot的Filter,HandlerInterceptor,Aspect与异常处理
为啥我的 @Aspect 无法被我的 SpringBoot 应用程序识别?