springMVC开启声明式事务实现操作日志记录
第一步、在applicationContext-mvc.xml开启AOP注解扫描
<aop:aspectj-autoproxy/>
第二步、创建增强类,实现日志记录
@Component //把切面添加到spring容器中 @Aspect //变成切面类 public class WriteLog {/***参数:代表目标方法对象**/public Object around(ProceedingJoinPoint pjp) throws Throwable {//得到方法签名对象 MethodSignature ms = (MethodSignature) pjp.getSignature(); Method m = ms.getMethod(); //获得方法对象 //判断方法上是否有@RequestMappering注解 if(m.isAnnotationPresent(RequestMapping.class)){ //获取此@RequestMappering注解 RequestMapping mapping = m.getAnnotation(RequestMapping.class); System.out.println(new Date()); System.out.println(request.getRemoteAddr()); //获取客户机IP地址 System.out.println(m.getName());//保存方法名 System.out.println(mapping.name()); //获取注解的name属性值 }Object object = pjp.proceed(); //执行真实的方法return object;} }
第三步、配置切入点和切面
<bean id="advice" class="WriteLog"/><aop:config><aop:pointcut id="pt" expression="execution(* com.alibaba.controller.*.*.*.(..))"/><aop:aspect ref="advice" ><aop:before method="around" pointcut-ref="pt"/></aop:aspect></aop:config>
第四步、测试即可
转载于:https://www.cnblogs.com/kitor/p/11079468.html
springMVC开启声明式事务实现操作日志记录相关推荐
- java B2B2C springmvc mybatis多租户电子商城系统 (七)springboot开启声明式事务
springboot开启事务很简单,只需要一个注解@Transactional 就可以了.因为在springboot中已经默认对jpa.jdbc.mybatis开启了事事务,引入它们依赖的时候,事物就 ...
- SpringBoot第七篇:springboot开启声明式事务
springboot开启事务很简单,只需要一个注解@Transactional 就可以了.因为在springboot中已经默认对jpa.jdbc.mybatis开启了事事务,引入它们依赖的时候,事物就 ...
- mybatis plus 事务管理器_SpringBoot第七篇:springboot开启声明式事务
springboot开启事务很简单,只需要一个注解@Transactional 就可以了.因为在springboot中已经默认对jpa.jdbc.mybatis开启了事事务,引入它们依赖的时候,事物就 ...
- springboot开启声明式事务
springboot开启声明式事务 转载http://blog.csdn.net/forezp/article/details/70833629 springboot开启事务很简单,只需要一个注解@T ...
- spring 注解开启声明式事务
spring开启声明式事务: 导入依赖: pom.xml <dependencies><!-- https://mvnrepository.com/artifact/org.spri ...
- 企业 SpringBoot 教程 (七)springboot开启声明式事务
springboot开启事务很简单,只需要一个注解@Transactional 就可以了.因为在springboot中已经默认对jpa.jdbc.mybatis开启了事事务,引入它们依赖的时候,事物就 ...
- java版b2b2c社交电商spring cloud分布式微服务(七)springboot开启声明式事务
java b2b2c 电子商务社交平台源码请加企鹅求求:一零三八七七四六二六.springboot开启事务很简单,只需要一个注解@Transactional 就可以了.因为在springboot中已经 ...
- springboot 事务_第六章:springboot开启声明式事务
springboot中已经默认对jpa.jdbc.mybatis开启了事务,引入他们的依赖关系,事务就默认开启.所以springboot开启事务很简单,只需要一个注解@Transactional就可以 ...
- Spring 声明式事务在业务开发中容易碰到的坑总结
Spring 声明式事务,在业务开发使用上可能遇到的三类坑,包括: 第一,因为配置不正确,导致方法上的事务没生效.我们务必确认调用 @Transactional 注解标记的方法是 public 的,并 ...
最新文章
- 服务器安装织梦网站数据库,DedeCMS数据库及服务器空间更换教程
- JDK7 源码学习系列——ThreadLocal
- python 画风场 scipy_科学网-Python: 扩展库SciPy-刘洋洋的博文
- 证券一哥炼成记——郭树清
- driver.get调用iframe中的页面_【5分钟玩转Lighthouse】爬取JavaScript动态渲染页面
- 红帽企业虚拟化平台RHEV中WINDOWS 虚拟机如何安装 GUEST代理和驱动
- Exchange中的数据库文件
- PyCharm+Python3转换xls文件为xlsx文件格式
- 多个tomcat部署的端口问题
- python入门教程傻瓜版_毫无基础的人如何入门 Python ?Python入门教程拿走不谢啦!...
- 中国检测开关行业市场供需与战略研究报告
- 16 年前,Google 为何花 5000 万美元买下 Android?
- ROS机器人SLAM学习:自建虚拟世界与Gazebo定位与导航仿真
- 怎么将mp3音乐转成ogg格式
- 在五环六环之间,有最真实的北京
- Tinymce组件cdn失效解决办法
- Dns异常 手动无法修改?
- 【C语言编程】如何整蛊你的损友,让他的电脑一直关机?
- JavaScript数据类型、引用类型、操作符、语句
- 大型开源车牌数据集CCPD及私有车牌数据集介绍
热门文章
- python安装库报错Microsoft visual c++ 14.0 is required问题解决办法
- 安装phpssdb扩展:
- zoj 3811 untrusted patrol
- 经典ICP算法的问题
- 进程的创建与可执行程序的加载
- VS2005 VS2008新建网站和新建项目里选Web应用程序区别
- 如何从几何角度上理解方程组只有一个解_深度科普---电磁波(三):无激励下的真空中的Maxwell方程组的解...
- gcc/g++ 链接库的编译与链接
- html5 clip,canvas中使用clip()函数裁剪方法
- 状态栏编程(显示系统时间和进度条)