Spring boot常用注解

 

@SpringBootApplication

  包含了@ComponentScan  表示程序启动是,自动扫描当前包及子包下所有类。

      @Configuration  表示将该类作用springboot配置文件类

     @EnableAutoConfiguration注解 表示程序启动时,自动加载springboot默认的配置。

@RestController 

注解是@Controller和@ResponseBody的合集,表示这是个控制器bean,并且是将函数的返回值直接填入HTTP响应体中,是REST风格的控制器。

@Autowried

a.是spring自带的注解,通过‘AutowiredAnnotationBeanPostProcessor’ 类实现的依赖注入;

b.根据类型进行自动装配的,如果需要按名称进行装配,则需要配合@Qualifier;

c.@Autowired有个属性为required,可以配置为false,如果配置为false之后,当没有找到相应bean的时候,系统不会抛错;

d.@Autowired可以作用在变量、setter方法、构造函数上。

@RequestMapping

将 HTTP 请求映射到 MVC 和 REST 控制器的处理方法上。 

@ResponseBody

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

@Resource

a.@Resource是JSR250规范的实现,需要导入javax.annotation实现注入。

b.@Resource是根据名称进行自动装配的,一般会指定一个name属性

c.@Resource可以作用在变量、setter方法上。

d.当注解写在字段上时,默认取字段名进行按照名称查找,如果注解写在setter方法上默认取属性名进行装配。 当找不到与名称匹配的bean时才按照类型进行装配。

@Service 

注解在类上,表示这是一个业务层bean

@PersistenceContext

注入的是实体管理器,执行持久化操作的,需要配置文件persistence.xml。

注入一堆保存实体类状态的数据结构,针对实体类的不同状态(四种,managedh或detached等)可以做出不同的反应(merge,persist等等),其实就是把数据从数据库里提出,然后在内存里处理的,再返回数据库的法则。
 

@Transactional

声明事务 可以作用于接口、接口方法、类以及类方法上。当作用于类上时,该类的所有 public 方法将都具有该类型的事务属性,同时,我们也可以在方法级别使用该标注来覆盖类级别的定义。

a.在service中加上 @Transactional,如果是action直接调该方法,会回滚,如果是间接调,不会回滚。

b.在service中的private加上 @Transactional,事务不会回滚。

c.Quartz中,execute直接调用加了 @Transactional方法,可以回滚;间接调用,不会回滚。

d.抛出异常xxxException,事务会回滚。

e.异步任务中,execute直接调用加了 @Transactional方法,可以回滚;间接调用,不会回滚。

f.在action中加上 @Transactional,不会回滚。切记不要在action中加上事务。

 

@PathVariable

带占位符的 URL 是 Spring3.0 新增的功能,该功能在SpringMVC 向 REST 目标挺进发展过程中具有里程碑的意义
通过 @PathVariable 可以将 URL 中占位符参数绑定到控制器处理方法的入参中:URL 中的 {xxx} 占位符可以通过@PathVariable(“xxx“) 绑定到操作方法的入参中。
主要是根据请求方法进行类的区别

@Value 

使用@value注解,从application.properties配置文件读取值,没读取到就用默认值  eg.@Value(value = "${user.userName}")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值