fzy-blog

springboot 注解

2019-05-24

springboot 注解

Bean 声明注解
@Service 业务逻辑层

@Component 组件

@Repository 数据访问层

@Controller Spring mvc 展现层

@Configurable 声明当前类是一个配置类

@ComponentScan(“com.weibo.ad”)

设置自动扫描包下面所有的 @Service @Component @Repository @Controller
@EnableAsync

开启异步任务支持
@PropertySource(“classpath:demo.properties”)

@Component
@PropertySource(“classpath:demo.properties”)
public class Demo {
@Value(“\${test.name}”)
private String testName;
}
@EnableScheduling 注解开启对计划任务的支持

Bean 注入注解

@Autowired Spring 提供

@Resource JSR-250

@Value(“xxxx”) 注入普通字符串

@Value(“\${xxx.xxx}”) 注入配置文件中字符串

@PostConstruct 标注在方法上,在构造函数执行完毕后执行

@PreDestroy Bean 标注在方法上,销毁前执行

@Async 异步方法表明,若是在 class 上则全是

@Scheduled 声明方法是计划任务

@Conditional() 条件注解,当满足某条件时

Spring MVC
@RequestMapping

用于映射 Web 请求 返回体,编码格式都可以在此处设置 produces = {} 设置返回值 json/xml charset 等
@RestController

这是个组合注解,组合了@Controller 和@ResponseBody
@ResponseBody

支持返回体放入 response 体中,而不是直接返回一个页面, 此注解可以放在返回值或者方法体上
@RequestBody

允许参数在 request 体里,而不是在地址栏后面
@PathVariable

用来接收路径参数,api/{id}

  1. @Component 是所有受 Spring 管理组件的通用形式,@Component 注解可以放在类的头上,@Component 不推荐使用。
  2. @Repository
  3. Service
  4. @Controller 对应表现层的 Bean,也就是 Action
    @Scope(“prototype”)表示将 Action 的范围声明为原型
    @Scope(“singleton”) spring 默认 scope 是单例模式(scope=“singleton”)

  5. 指定注解扫描多个包(多个包以逗号隔开)
    <context:component-scan base-package=“cn.gacl.dao.impl,cn.gacl.service.impl,cn.gacl.action”/>

@Configuration 把一个类作为一个 IoC 容器,它的某个方法头上如果注册了@Bean,就会作为这个 Spring 容器中的 Bean。

@Scope 注解 作用域

@Lazy(true) 表示延迟初始化

@Service 用于标注业务层组件、

@Controller 用于标注控制层组件(如 struts 中的 action)

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

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

@Scope 用于指定 scope 作用域的(用在类上)

@PostConstruct 用于指定初始化方法(用在方法上)

@PreDestory 用于指定销毁方法(用在方法上)

@DependsOn:定义 Bean 初始化及销毁时的顺序

@Primary:自动装配时当出现多个 Bean 候选者时,被注解为@Primary 的 Bean 将作为首选者,否则将抛出异常

@Autowired 默认按类型装配,如果我们想使用按名称装配,可以结合@Qualifier 注解一起使用。如下:

@Autowired @Qualifier(“personDaoBean”) 存在多个实例配合使用

@Resource 默认按名称装配,当找不到与名称匹配的 bean 才会按类型装配。

@PostConstruct 初始化注解

@PreDestroy 摧毁注解 默认 单例 启动就加载

@Async 异步方法调用

使用支付宝打赏
使用微信打赏

若你觉得我的文章对你有帮助,欢迎点击上方按钮对我打赏

扫描二维码,分享此文章