spring中的注解开发

Posted 拿红罗卜钓鱼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring中的注解开发相关的知识,希望对你有一定的参考价值。

1. 使用 ioc 相关注解
使用步骤:
1 、导入相关 jar (core beans context expression jcl 以及 aop )
2 、创建 spring 的配置文件 需要的命名空间及约束 ( beans context )
3 、开启注解扫描,告诉程序注解的对象放在了程序的哪个包下面
4 、创建类,使用注解进行对象创建, @Component @Controller @Service
@Repository
此类注解用于 ioc 中的对象声明 属性:
value 用来设置对象在容器中的名称 ,如果没有设置 value ,则默认将类名首字
母小写作为对象名称
5 、使用依赖注入,将容器中的对象赋值类响应的属性; @Autowired @Qualifier
@Resource
此类注解用于 DI 依赖注入,将对象赋值给类中的属性
@Autowired :和属性的类型有关,与属性名称无关;
1. 先找当前容器中是否有此类型的对象,如果有且仅有一个直接注入;
2. 如果找多个此类型的对象,则按照属性名称去找对象,如果有一样名称的直
接注入;
3. 如果没有一样名称的,则使用 @Qualifier("bean 名称 ") 指定具体 bean
对象;
@Resource :先根据属性名称去容器中寻找对象
1. 先去容器中寻找和属性名称相同的对象,如果有则直接进行注入;
2. 再根据类型进行匹配对象;
3. 如果此时还是确定不了具体对象,需要使用 name 属性指定 bean 对象的名称
@Resource(name="userDao1")
6 、创建测试类,先加载容器,获取容器中的对象,使用对象;
2. 使用 aop 相关注解
使用步骤 ( 注解方式 )
1 、导入相关 jar ( core beans context expression jcl 以及 aop )
还需要 ( aspects 以及第三方 jar aspectjweaver.jar)
2 、创建 spring 的配置文件 需要的命名空间及约束 ( beans context aop )
3 、开启 IOC 注解扫描,告诉程序注解的对象放在了程序的哪个包下面,并且再开启 AOP 的注解
支持
4 、创建切面类,即代理类,需要在类上方使用 @Aspect 注解,表示当前类为切面类,同时加
@Component 注解将切面类交由 spring 容器进行管理吗,在类中的不同方法上使用 @Before
@AfterRetruning @After @AfterThrowing @Around
可以使用无参无返回无方法体的方法定义为 切入点表达式 基本写法:
基本语法: execution( 权限修饰符 返回值类型 包名 . 包名 . 包名 . 类名 . 方法名 ( 参数
类型,参数类型 ))
通配符写法: execution( * *..*.*(.. ) )
5 、还是执行原来的方法,就可以自动进行 aop 的切面编程处理;
 

以上是关于spring中的注解开发的主要内容,如果未能解决你的问题,请参考以下文章

太爽了,纯注解开发模式简直就是Spring中的Spring!

太爽了,纯注解开发模式简直就是Spring中的Spring!

spring中的注解开发

Spring注解开发

Spring框架--Spring注解开发

002SpringIOC005完全注解开发