Spring常用注解的详细介绍(包你学明白)
目录
1. 为什么要使用注解?
2. 什么是注解?
3. 在Spring中使用注解的前期准备
4. @Component注解的详细介绍
5. @Value注解的详解介绍
6. @Autowired注解的详细介绍
7. @Resource注解的详细介绍
8. 怎么选择基于xml还是基于注解的方式创建对象并赋值呢?
1. 为什么要使用注解?
答:在最开始我们接触Spring的时候,我们大家都是在.xml文件中,通过<bean>标签来给要创建的对象赋值,这样以来我们就会写大量的<bean>标签,这就显得很冗余。因此,我们迫切需要一种更简单的方法,去给对象赋值。这种情况已经被Spring开发人员所解决,于是就有了今天我们要介绍的Spring的注解方式。
我们可以使用Spring的方式来创建对象,并且也可以使用注解给对象赋值。而不再是单纯的一直使用<bean>的set注入,构造注入,自动注入来创建对象和赋值。
补充:关于Spring中的set注入,构造注入,可以参考我前面写的: http://t.csdn.cn/inw4n
关于Spring中的自动注入(byName,byTpye),可以参考我前面写的 http://t.csdn.cn/T9Uhz
2. 什么是注解?
我们其实对注解这个词汇,既熟悉又陌生。适当的明白注解大概是什么,能让我们在初步学习Spring注解的时候,起码不会恐慌。
正式开始介绍注解:细心的查看我们之前学习的代码,你会发现,当我们在重写toString方法的时候,这个重写的方法上面就有一个@override。那么这个带有@符号的就是注解,这样看的话,其实注解也并不是距离我们很远。
注意:所有的注解都是@interface类型的,你可以将鼠标放到注解上面,并且同时按住ctrl键,这样你就可以看到这个注解的定义。
上图中的红色小圆点处会写这个注解的属性有哪些。只不过是@override这个注解没有自己的属性而已。
所以:我们可以在Spring中使用注解的方式创建对象,并且可以在使用注解创建对象的同时,给对象赋值。Spring中使用注解的方式创建对象是通过反射的方式创建的对象。
3. 在Spring中使用注解的前期准备
- 必须在Pom.xml文件中加入Spring-context依赖,和Spring-aop依赖。由于Spring-context依赖中已经包含了Spring-aop依赖,因此我们最后添加一个Spring-context依赖就够了。
- 在Spring的配置文件applicationContext.xml中,加上组件组件扫描器,也叫做注解扫描器。
<context:component-scan base-package="你使用注解的类所在的路径(写到包就行)"></context:component-scan>
4. @Component注解的详细介绍(创建对象的)
5. @Value注解的详解介绍(给简单类型的属性赋值的)
6. @Autowired注解的详细介绍(给引用类型的属性赋值的)
7. @Resource注解的详细介绍(给引用类型的属性赋值的)
8. 怎么选择基于xml还是基于注解的方式创建对象并赋值呢?
答案:若是要经常改动创建对象的值,那么我们使用基于xml的方式去创建对象
若是不经常改动创建对象的值,那么我们使用主机的方式去创建对象并赋值。
补充:我尝试过,可以使用xml文件的方式创建对象,再使用注解的方式给创建的对象赋值。!!
Spring常用注解的详细介绍(包你学明白)相关推荐
- Spring常用注解,注解 IOC ,AOP,MVC 的理解
文章目录 大佬总结 0.Spring常用注解 0.1.SpringBootController里面的用法 0.1.1.SpringBoot 中常用注解@Controller/@RestControll ...
- Spring系列之Spring常用注解总结
参看博客:https://www.cnblogs.com/xiaoxi/p/5935009.html 传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺 ...
- Spring常用注解总结
传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点: 1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分开.xml文 ...
- spring autowired idea都匹配上了_你清楚这几个Spring常用注解吗?
作者:平凡希http://cnblogs.com/xiaoxi/p/5935009.html 传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点: 如 ...
- autowired注解_Spring系列之Spring常用注解总结
作者:平凡希来源:https://www.cnblogs.com/xiaoxi/p/5935009.html 传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做 ...
- sessionattribute 被spring 扫描不到_Spring 系列之 Spring 常用注解总结(肝硬化的干货)...
传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点: 1. 如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分开.xml ...
- Spring系列之Spring常用注解总结 原文:https://www.cnblogs.com/xiaoxi/p/5935009.html
传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点: 1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分开.xml文 ...
- Spring常用注解 - 使用注解来构造IoC容器
Spring常用注解 使用注解来构造IoC容器 用注解来向Spring容器注册Bean.需要在applicationContext.xml中注册<context:component-scan b ...
- spring boot 集成 redis 详细介绍
Spring Cache是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能,大大简化我们在业务中操作缓存的代码. Spring Cache只是提供了一层抽象,底层可以切换不 ...
最新文章
- 第七周项目三-用多文件组织多个类的程序
- mysql部署 linux_linux 怎么部署mysql数据库
- Android Art Hook 技术方案
- 一种业界通用的响应式布局解决方法
- python中count()函数的用法
- mysql 创建、修改、删除表
- 数据结构----顺序表与单链表(JAVA)
- 中间件——构筑复杂分布式应用的关键技术(转)
- java urlconnection乱码_HttpURLConnection 请求乱码
- redis memcache 性能比较
- SAX与DOM之间的区别 转帖
- oracle 定时器调用存储过程
- AMD新旗舰:短小精悍,干掉双芯卡
- 小米手环6NFc支持Android,小米手环6支持nfc吗 小米手环6有没有nfc功能
- 物联网终端安全系列(之四) -- 终端安全方案之SIM卡篇
- https://juejin.im/entry/58622ebc570c3500694ec86c
- 洛谷P1789 【Mc生存】插火把
- 《C语言点滴》一第1章 程序猿 程序媛1.1 装备篇
- 深度学习训练经验之迭代次数与准确率之惑
- C++实现的利用LR(1)分析表对赋值表达式进行语法制导翻译生成四元式及汇编代码