知识大全 通过注解简化spring aop织入点的指定
Posted 知
篇首语:人生遇到的每个人,出场顺序很重要,很多人如果换个时间认识,就会有不同的结局。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 通过注解简化spring aop织入点的指定相关的知识,希望对你有一定的参考价值。
大型Java web应用 往往有很大的系统访问量 为了保护服务器免于出现过载的情况 一般都需要对流量进行控制 对于web页面的访问一般通过配置服务器或者apache可以起到保护的作用 但是对于webservice 在负载均衡之外还需要一些手段来防止系统过载 这些手段需要通过服务器端编码实现 一般地 实现这类监控一般选择是用aop的方式 在不影响功能代码的情况下进行 这里spring aop是一个通常的选择 无论通过xml配置的方式 还是使用AspectJ spring aop都必须由开发者通过代码形式确定织入点 对于小型webservice应用来 说 如果将一系列webservice接口放在同一的包中 那么配置还相对简单 但对于一个相对较大的webservice应用 他的配置将变得非常繁琐 并且对于个性化的需求并不好处理 AspectJ定义织入点是 可以通过使用比如execution within target等函数声明切入点 这些函数就不一一解释了 这里要说明的 是使用execution与annotation配合 实现自定义织入点的方法 方便灵活地配置需要监控的方法 先把代码贴上来 注解定义如下 @Target(ElementType METHOD) @Retention(RetentionPolicy RUNTIME) public @interface Monitor String value() default ; 这样就可以在目标方法上使用注解了 切面 @Aspect public class MonitorInterceptor @Around( execution(* ** *()) && @annotation(monitor) ) public void doMonitor (ProceedingJoinPoint joinPoint Monitor monitor) //业务代码 execution(* ** *())表示执行任何方法 @annotation(monitor)表示方法上带有Monitor注解的 当满足这两个条件时即时满足条件的切入点 使用这种方式 在doMonitor方法中必须要有一个Monitor类型的入参 否则会抛出异常(试试就知道了) 如果不想使用这种方式 可以考虑使用 @Around( execution(@Monitor * ** *()) ) 接下来只要将目标webservice做为一个bean加载到spring容器中 并且配置使用aspectJ即可 如下 <?xml version= encoding= UTF ?><beans xmlns= /schema/beans xmlns:xsi= / /XMLSchema instance xmlns:context= /schema/context xmlns:aop= /schema/aop xsi:schemaLocation= /schema/context /schema/context/spring context xsd /schema/beans /schema/beans/spring beans xsd /schema/aop /schema/aop/spring aop xsd > <aop:aspectj autoproxy /></beans> 测试类 public class Test @Monitor public void test //业务代码 只要将Test类配置入spring就能发现 aop生效了 cha138/Article/program/Java/hx/201311/25552相关参考
Spring注解入门 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 使用Spring注解来注入属
Spring的静态Pointcut切入点 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
Spring的切入点(三动态Pointcut) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 由
Spring的切入点(一静态Pointcut) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! P
SpringMVC学习之注解介绍 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! spring的注
SpringAOP详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 此前对于AOP的使用仅限于
知识大全 Spring Batch 2将支持工作划分和基于注解的配置
SpringBatch2将支持工作划分和基于注解的配置 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧
浅析Spring.net中的Aop使用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &
Spring事务处理及其AOP框架的内幕 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! ***注
开源技术分析:AOP和Spring事务处理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一为什