Spring常用注解
1. @Component(任何层) @Controller @Service @Repository(dao): 用于实例化对象
2. @Scope : 设置Spring对象的作用域
3. @PostConstruct @PreDestroy : 用于设置Spring创建对象在对象创建之后和销毁之前要执行的方法
4. @Value: 简单属性的依赖注入
5. @Autowired: 对象属性的依赖注入
6. @Qualifier: 要和@Autowired联合使用,代表在按照类型匹配的基础上,再按照名称匹配。
7. @Resource 按照属性名称依赖注入
8. @ComponentScan: 组件扫描
9. @Bean: 表在方法上,用于将方法的返回值对象放入容器
10. @PropertySource: 用于引入其它的properties配置文件
11. @Import: 在一个配置类中导入其它配置类的内容
12. @Configuration: 被此注解标注的类,会被Spring认为是配置类。Spring在启动的时候会自动扫描并 加载所有配置类,然后将配置 类中bean放入容器
13. @Transactional 此注解可以标在类上,也可以标在方法上,表示当前类中的方法具有事务管理功 能。
Spring MVC常用注解
1.@RequestMapping:用于处理请求 url 映射的注解,可用于类或方法上。用于类上,则表示类中的所 有响应请求的方法都是以该地址作为父路径。
2.@RequestBody:注解实现接收http请求的json数据,将json转换为java对象。
3.@ResponseBody:注解实现将conreoller方法返回对象转化为json对象响应给客户。
4.@PathVariable 用户从url路径上获取指定参数,标注在参数前 @PathVariabel("要获取的参数名")。 5.@RequestParam: 标注在方法参数之前,用于对传入的参数做一些限制,支持三个属性: - value:默认属性,用于指定前端传入的参数名称 - required:用于指定此参数是否必传 - defaultValue:当参数为非必传参数且前端没有传入参数时,指定一个默认值
6. @ControllerAdvice 标注在一个类上,表示该类是一个全局异常处理的类。
7. @ExceptionHandler(Exception.class) 标注在异常处理类中的方法上,表示该方法可以处理的异常 类型。
Spring Boot常用注解
- @SpringBootApplication:它封装了核心的@SpringBootConfiguration +@EnableAutoConfiguration +@ComponentScan这三个类,大大节省了程序员配置时间,这就是SpringBoot 的核心设计思想. @EnableScheduling是通过@Import将Spring调度框架相关的bean定义都加载到IoC容器 @MapperScan:spring-boot支持mybatis组件的一个注解,通过此注解指定mybatis接口类的路径,即可完 成对mybatis接口的扫描
- @RestController 是@Controller 和@ResponseBody的结合,一个类被加上@RestController注解,数 据接口中就不再需要添加@ResponseBody,更加简洁。
- @RequestMapping,我们都需要明确请求的路径.
- @GetMappping,@PostMapping, @PutMapping, @DeleteMapping 结合@RequestMapping使用, 是 Rest风格的, 指定更明确的子路径.
- @PathVariable:路径变量注解,用{}来定义url部分的变量名.
- @Service这个注解用来标记业务层的组件,我们会将业务逻辑处理的类都会加上这个注解交给spring容器。 事务的切面也会配置在这一层。当让 这个注解不是一定要用。有个泛指组件的注解,当我们不能确定具体作用的时候 可以用泛指组件的注解托付给spring容器
- @Component和spring的注解功能一样, 注入到IOC容器中.
- @ControllerAdvice 和 @ExceptionHandler 配合完成统一异常拦截处理.