JavaMelody监控Spring Service层和Spring Controller层
2016-03-29 22:09
441 查看
1.SQL层的配置比较简单
在使用Spring IOC和Spring MVC的时候都使用了POJO的风格,没有公共的抽象父类,也没有公共的接口;阅读JavaMelody的文档,其提供了注解风格的解决方案;2.监控Service层
注解POJO风格的类实现AOP, 其实就是使用了Aspect;首先web.xml的配置如下:
<!-- 应用上下文配置文件 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value> classpath:net/bull/javamelody/monitoring-spring-aspectj.xml classpath:aos.cxt.xml </param-value> </context-param>
<!-- javamelody --> <filter> <filter-name>javamelody</filter-name> <filter-class>net.bull.javamelody.MonitoringFilter</filter-class> <!-- <async-supported>true</async-supported> --> </filter> <filter-mapping> <filter-name>javamelody</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> <!-- <dispatcher>ASYNC</dispatcher> --> </filter-mapping> <listener> <listener-class>net.bull.javamelody.SessionListener</listener-class> </listener>
下面开始正式配置监控service层
在Spring的配置文件中(是Spring不是Spring MVC)开启aspect自动代理。
<aop:aspectj-autoproxy/>
完了,编写service层的代码的时候,只要在感兴趣的类或者方法上注解@MonitoredWithSpring就可以了。
2.监控Controller层
首先开启Spring MVC的aspect自动代理,在Spring MVC的配置文件中,增加如下代码:<aop:aspectj-autoproxy proxy-target-class="true"/>
注意与配置Service层的自动代理时的区别proxy-target-class=”true”,这个必须要有。
完了,与Service层类似,编写Controller层的代码的时候,在感兴趣的类或者方法上注解@MonitoredWithSpring就可以了。
总结:好多人配置不起来,其实是不熟悉Spring AOP的配置,把Spring AOP玩熟了,分分钟就配置了。
相关文章推荐
- Spring mvc和SSH对比
- java SE基础(Collection接口概述)
- java毕向东听课笔记6(单例设计模式)
- java中死锁的案例
- javaEE 部门树状结构显示以及要注意的问题
- java synchronized 简单示例
- Java--双亲委派机制&类加载机制
- Struts2默认位置改变
- eclipse 使用design控件
- struts1.x初来乍到(二)
- java 二叉树/创建/先序/中序/后序
- Java--String
- JAVA编程思想4读书日记(1)
- Java内存分析工具——Jstat
- ecache + spring+mybatis整合
- 希尔排序
- Mockito 单元测试简介以及Stub
- Spring入门
- java反转链表
- Java_chapter13_异常处理