欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

日志管理

发布时间:2025/7/14 编程问答 30 豆豆
生活随笔 收集整理的这篇文章主要介绍了 日志管理 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

首先,做些准备操作,建立一个log数据库表存放信息(这个你想要什么log信息就自己添加)

形式大概可以为  userId  username   logDate(日志日期)  operator(操作)  methodName(方法名称)

然后使用maven的逆向工程生成实体类,dao。。

 

之后,就是要建立一个spring AOP的工具类

1 package com.corder520.common; 2 3 4 import com.corder520.log.entity.Log; 5 import com.corder520.log.service.LogService; 6 import com.corder520.user.entity.User; 7 import org.aspectj.lang.JoinPoint; 8 import org.aspectj.lang.annotation.AfterReturning; 9 import org.aspectj.lang.annotation.Aspect; 10 import org.aspectj.lang.annotation.Pointcut; 11 import org.springframework.beans.factory.annotation.Autowired; 12 import org.springframework.stereotype.Component; 13 import java.util.Date; 14 15 @Aspect 16 @Component 17 public class LogAspect { 18 19 @Autowired 20 private LogService logService; 21 22 @Pointcut("execution(* com.corder520.user.service.UserServiceImpl.findUserByUserName(..))") 23 public void loginCell(){} 24 25 26 @AfterReturning(value = "loginCell()",argNames ="joinPoint,object" ,returning = "object") 27 public void loginLog(JoinPoint joinPoint,Object object){ 28 User user= (User) object; 29 if (user==null){ 30 return; 31 } 32 if (joinPoint.getArgs()==null){ 33 return; 34 } 35 36 String methodName=joinPoint.getSignature().getName(); 37 38 Log log=new Log(); 39 log.setUserid(user.getId()); 40 log.setLogdate(new Date()); 41 log.setOperator("登录"); 42 log.setUsername(user.getUsername()); 43 log.setMethod(methodName); 44 logService.insert(log); 45 } 46 47 } LogAspect

然后在spring-MVC.xml 里面

<!--开启切面编程自动代理-->
<aop:aspectj-autoproxy proxy-target-class="true"/>
<bean id="logAspect" class="com.corder520.common.LogAspect"/>

如果要把日志在前端展示,建立一个controller
利用mybatis的分页插件即可。

 

转载于:https://www.cnblogs.com/xiaobo520/p/9656637.html

总结

以上是生活随笔为你收集整理的日志管理的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。