Spirng常用注解

@RequestMapping

@RequestMapping("/test")地址映射到对应的方法上

@ResponseBody

返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML数据

@Controller

@Controller用于标注控制层组件

@RestController

@RestController的作用相当与@Controller注解和@ResponseBody注解的同时使用的作用,倘若我们只是使用@RestController注解Controller,则controller中的方法无法返回jsp页面配置的试图解析器。

@Service

如果有一个类带了@Service注解,将自动注册到Spring容器,不需要再在applicationContext里面定义bean了。

@Repository

@Repository用于标注数据访问组件,即DAO组件. 

@Resource

@Resource(这个注解属于J2EE的),默认安照名称进行装配,名称可以通过name属性进行指定, 
如果没有指定name属性,当注解写在字段上时,默认取字段名进行按照名称查找,如果注解写在
setter方法上默认取属性名进行装配。当找不到与名称匹配的bean时才按照类型进行装配。但是
需要注意的是,如果name属性一旦指定,就只会按照名称进行装配。如下: Java代码
@Resource(name="baseDao")     
private BaseDao baseDao; 

@Component

@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。

@Autowired

@Autowired默认按类型装配(这个注解是属业spring的),默认情况下必须要求依赖对象必须存
在,如果要允许null值,可以设置它的required属性为false,如:@Autowired(required=false)
,如果我们想使用名称装配可以结合@Qualifier注解进行使用,如下: Java代码 
@Autowired
@Qualifier("baseDao")     
private BaseDao baseDao;   

@Scope("prototype")

默认是单例模式,即scope="singleton"。另外scope还有prototype、request、session、
global session作用域。scope="prototype"多例。原型模式。

@Bean

@Bean是一个方法级别上的注解,主要用在@Configuration注解的类里,也可以用在@Component注解的类里。添加的bean的id为方法名

@Configuration

从Spring3.0,@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个
或多个被@Bean注解的方法,这些方法将会被AnnotationConfigApplicationContext或
AnnotationConfigWebApplicationContext类进行扫描,并用于构建bean定义,初始化Spring容器。

注意:@Configuration注解的配置类有如下要求:
1. @Configuration不可以是final类型;
2. @Configuration不可以是匿名类;
3. 嵌套的configuration必须是静态类。

@EnableTransactionManagement

Spring Boot 使用事务非常简单,首先使用注解 @EnableTransactionManagement开启事务支持后,然后在访问数据库的Service方法上添加注解 @Transactional 便可。

@Transactional

给方法添加事务支持,如方法上加上@Transactional(value = "mqJTA", rollbackFor = IllegalArgumentException.class)

@Value

在spring 3中,新增了一个注解@Value,通过它,我们可以很方便的加载项目中的 XXX.properties 属性文件(以下统称 属性文件)参考代码如下:
@Value("${spring.datasource.mq.url}")
private String DATASOURCE_MQ_URL;

@Qualifier

当两个类实现了同一个接口,在注入时如果没特别指明是哪一个类怎会报错,所以可以通过@Qualifier来指明具体类来区分。

@Primary

spring 根据类型无法选择到底注入哪一个,就可以用@Primay注解来告诉spring。

猜你喜欢

转载自blog.csdn.net/y13g14m/article/details/82420464
今日推荐