零配置实现Spring IoC与AOP
2017-07-27 11:34
357 查看
在Spring实现AOP方式之二:使用注解配置 Spring AOP 基础上,新增一个类Member:
该类并未注解,容器不会自动管理。因为没有xml配置文件,则使用一个作为配置信息,ApplicationCfg.java文件
测试代码:
运行结果:
package com.ailianshuo.springaop.sample05; /** * 该类并未注解,容器不会自动管理 * @author ailianshuo * 2017年7月27日 上午10:45:29 */ public class Member { public void display(){ System.out.println("显示会员对象"); } }
该类并未注解,容器不会自动管理。因为没有xml配置文件,则使用一个作为配置信息,ApplicationCfg.java文件
package com.ailianshuo.springaop.sample05; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.EnableAspectJAutoProxy; @Configuration //用于表示当前类为容器的配置类,类似<beans/> @ComponentScan(basePackages="com.ailianshuo.springaop.sample05") //扫描的范围,相当于xml配置的结点<context:component-scan/> @EnableAspectJAutoProxy(proxyTargetClass=true) //自动代理,相当于<aop:aspectj-autoproxy proxy-target-class="true"></aop:aspectj-autoproxy> public class ApplicationCfg { //在配置中声明一个bean,相当于<bean id=getUser class="com.ailianshuo.springaop.sample05.Member"/> @Bean public Member getMember(){ return new Member(); } }
测试代码:
package com.ailianshuo.springaop.sample05; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; /** * 零配置实现Spring IoC与AOP * @author ailianshuo * 2017年7月25日 下午11:42:57 */ public class Test { public static void main(String[] args) { // 通过类初始化容器 ApplicationContext ctx = new AnnotationConfigApplicationContext(ApplicationCfg.class); Math math = ctx.getBean("math", Math.class); int n1 = 20, n2 =2; math.add(n1, n2); math.sub(n1, n2); math.mut(n1, n2); try { math.div(n1, n2); } catch (Exception e) { } Member member=ctx.getBean("getMember",Member.class); member.display(); } }
运行结果:
----------before advice---------- add 20+2=22 ----------after advice---------- ----------before advice---------- sub 20-2=18 ----------after advice---------- ----------before advice---------- mut 20X2=40 ----------after advice---------- ----------before advice---------- div 20/2=10 ----------after advice---------- 显示会员对象
相关文章推荐
- Spring AOP之配置文件实现方式
- Spring(四)基于注解配置IOC容器&基于注解实现声明式事务
- SpringBoot环境下配置AOP切面实现权限拦截
- Spring实现AOP方式之二:使用注解配置 Spring AOP
- 基于Spring AOP和Groovy日志模板配置的日志记录框架的二次实现与使用案例
- 【框架】[Spring]XML配置实现AOP拦截-切点:JdkRegexpMethodPointcut
- spring学习(七)—AOP通过配置文件方式实现
- Spring AOP详解及通过XML配置实现的实现方法
- 静态代理、JDK动态代理、CGLIB动态代理、Spring实现AOP、IOC+AOP
- 使用Spring的配置xml方式实现AOP
- Spring的AOP分为注解和配置两种方式实现
- spring AOP 之 注解 配置实现(附 Java 代码实例)
- 分析Spring启动过程,完成实现核心的两大功能(IOC , AOP);
- Spring基础、IOC(控制反转)、AOP(面向切面编程)、Log4j、注解配置
- Spring中IOC配置xml实现和IOC注解实现
- Spring如何实现IOC与AOP的
- 用Spring配置文件或者注解方式实现AOP
- Spring Aop之AspectJ注解配置实现日志管理
- spring.net结合普通三层(实现IOC 及AOP中的异常记录功能)
- Spring---->采用静态配置文件方式实现AOP