关键词:
1.传统的Spring的开发是基于.xml文件开发,这样做当配置的Bean比较多,.xml文件将会变得越来越庞大,如果按照需求分开.xml文件,.xml文件又会变得越来越低可读性与可维护性变得很低。
2.注解开发则会有效的减少配置文件,提高开发的效率。
1、@Autowired
自动装配,其作用是为了消除代码Java代码里面的getter/setter与bean属性中的property。当然,getter看个人需求,如果私有属性需要对外提供的话,应当予以保留。
2、@Qualifier(指定注入Bean的名称)
如果容器中有一个以上匹配的Bean,使用@Autowired系统不知道使用哪一个Bean则会报错,这时则可以通过@Qualifier注解限定Bean的名称,看下面的例子:
定义一个Car接口:
public interface ICar public String getCarName();
两个实现类BMWCar和BenzCar:
public class BMWCar implements ICar public String getCarName() return "BMW car";
public class BenzCar implements ICar public String getCarName() return "Benz car";
public class CarFactory @Autowired @Qualifier("bmwCar") private ICar car; public String toString() return car.getCarName();
applicationContext.xml文件
这时,CarFactory 则就会根据@Qualifier("bmwCar")找到bmwCar子类从而不会报错。
3、@Resource
@Resource注解与@Autowired注解作用非常相似,@Autowired默认按类型装配(这个注解是属业spring的),默认情况下必须要求依赖对象必须存在,如果要允许null 值,可以设置它的required属性为false。
@Resource(这个注解属于J2EE的),默认安照名称进行装配,名称可以通过name属性进行指定, 如果没有指定name属性,当注解写在字段上时,默认取字段名进行按照名称查找,如果注解写在setter方法上默认取属性名进行装配。 当找不到与名称匹配的bean时才按照类型进行装配。但是需要注意的是,如果name属性一旦指定,就只会按照名称进行装配。
4、@Service
用于标注服务层,主要用来进行业务的逻辑处理,在固定的路径下,比如com.book.service的包下,我们可以在spring.xml通过设置从而自动扫描com.book.service路径下所有注册@Service的类,不用在配置Bean
<context:component-scan base-package="com.book.service" />
例如:
@Service public class Zoo @Autowired private Tiger tiger; @Autowired private Monkey monkey; public String toString() return tiger + " " + monkey;
5、@Controller
用于标注控制层,相当于struts中的action层,用法类似于@Service。
6、@Component
泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),我们就可以使用@Component来标注这个类。
7、@Repository
@Repository对应数据访问层Bean 。
spring和springboot常用注解总结(代码片段)
原文链接:http://www.cnblogs.com/tinyj/p/9786013.htmlhttps://blog.csdn.net/yitian_66/article/details/80866571@ConfigurationProperties可以非常方便的把资源文件中的内容绑定到对象上首先在配置文件里面,这些信息是这样子滴connection.username=adminconnec 查看详情
spring和springboot常用注解总结(代码片段)
@RequestMapping这个注解可以用于类和方法上,用于类上,表示父路径,如类上是demo,方法上是/demo1,那么访问路径就是demo/demo1该注解有六个属性:params:指定request中必须包含某些参数值是,才让该方法处理。headers:指定request中必... 查看详情
spring常用注解总结(代码片段)
@Configuration表示该类为“配置类”,可替换xml配置文件。与@Component不同的是,@Configuration会生成CGLIB代理class。@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Componentpublic@interfaceConfiguration@AliasFor(annotation=Component.class)Stringval... 查看详情
spring系列之spring常用注解总结(代码片段)
传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop、事物,这么做有两个缺点:1、如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大;如果按需求分开.xml文件,那么.xml文件又会非常多。总之这将导致配... 查看详情
spring系列之spring常用注解总结(代码片段)
...,在容器查找匹配的Bean,当有且仅有一个匹配的Bean时,Spring将其注入@Autowired标注的变量中。因此,引入@Autowired注解,先看一下spring配置文件怎么写:<?xmlversion="1.0"encoding="UTF-8"?><beans xmlns="http://www.springframewor... 查看详情
springboot中常用注解总结(代码片段)
... @Controller:将该类标记为Controller层的类,并且注入到Spring容器中 @Responsebody:注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或是 ... 查看详情
spring最常用的7大类注解(代码片段)
...迭代,Java5.0开始支持注解。而作为java中的领军框架spring,自从更新了2.5版本之后也开始慢慢舍弃xml配置,更多使用注解来控制spring框架。而spring的的注解那么多,可能做java很多年,都用不上。这里按照类型... 查看详情
spring最常用的7大类注解(代码片段)
...迭代,Java5.0开始支持注解。而作为java中的领军框架spring,自从更新了2.5版本之后也开始慢慢舍弃xml配置,更多使用注解来控制spring框架。而spring的的注解那么多,可能做java很多年,都用不上。这里按照类型... 查看详情
springboot常用注解总结(代码片段)
在SpringBoot框架中,注解做为一种隐式配置,极大的简化了之前xml文件的配置方式。SpringBoot中包含许多种类的注解,这里对在SpingBoot项目中经常使用到的一些注解的进行大致的归纳总结;一、启动相关1、@SpringBootApplication在SpirngBo... 查看详情
spring最常用的7大类注解,史上最强整理!(代码片段)
...迭代,Java5.0开始支持注解。而作为java中的领军框架spring,自从更新了2.5版本之后也开始慢慢舍弃xml配置,更多使用注解来控制spring框架。而spring的的注解那么多,可能做java很多年,都用不上。这里按照类型... 查看详情
spring最常用的7大类注解,史上最强整理!(代码片段)
...迭代,Java5.0开始支持注解。而作为java中的领军框架spring,自从更新了2.5版本之后也开始慢慢舍弃xml配置,更多使用注解来控制spring框架。而spring的的注解那么多,可能做java很多年,都用不上。这里按照类型... 查看详情
spring最常用的7大类注解,史上最强整理!(代码片段)
...迭代,Java5.0开始支持注解。而作为java中的领军框架spring,自从更新了2.5版本之后也开始慢慢舍弃xml配置,更多使用注解来控制spring框架。而spring的的注解那么多,可能做java很多年,都用不上。这里按照类型... 查看详情
jackson总结:常用注解整合spring自定义jsonserializer(代码片段)
原文地址:https://www.jianshu.com/p/63c5985fb48eJackson作为springMVC默认的MessageConverter(消息序列化工具),经常在项目中使用,如果熟悉Jackson常用的使用方法,特性化机制,就会事半功倍,极大提高前后端数据交互的灵活性。maven依赖&l... 查看详情
spring常用注解解析(代码片段)
1.常用注解1.1@Configuration@ConfigurationpublicclassMainConfig@Configuration注解表明这个类是一个配置类,该类中应该包含如何在Spring应用上下文中创建bean的细节1.2@ComponentScan@Configuration@ComponentScan("per.ym")publicclassMainConfig@Co 查看详情
ssm框架常用注解(代码片段)
ssm框架常用注解一:常用注解1.1mybatis常用注解1.2spring常用注解1.3springMVC常用注解一:常用注解1.1mybatis常用注解1.2spring常用注解1.创建当前对象交给spring容器管理的注解2.属性依赖注入的注解3.生命周期相关的注解4.使用配... 查看详情
ssm框架常用注解(代码片段)
ssm框架常用注解一:常用注解1.1mybatis常用注解1.2spring常用注解1.3springMVC常用注解一:常用注解1.1mybatis常用注解1.2spring常用注解1.创建当前对象交给spring容器管理的注解2.属性依赖注入的注解3.生命周期相关的注解4.使用配... 查看详情
spring常用注解总结
spring注解使用@Controller@Service(“itemService”)(如果没给(“itemService”),则对象名(被扫描的类的对象)默认是类名首字母小写)@Component@Repository以上四个注解作用相同(都是spring框架扫描类,对类进行管理使用)使用方法... 查看详情
spring中常用的注解(代码片段)
Spring中常用的注解1)@Component2)@Repository3)@Service4)@Controller5)@Autowired6)@Resource7)@QualifierSpring注解装配BeanSpring默认不使用注解装 查看详情