一、使用注解的优势:

     1.采用纯java代码,不在需要配置繁杂的xml文件

     2.在配置中也可享受面向对象带来的好处

     3.类型安全对重构可以提供良好的支持

     4.减少复杂配置文件的同时亦能享受到springIoC容器提供的功能

二、常用SpringBoot注解

     1.@SpringBootApplication:启动类注解,包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。

     2.@ComponentScan:组件扫描,让spring Boot自动发现和装配bean,并把它加入到程序上下文。

     3.@Configuration:等同于spring的XML配置文件;使用Java代码可以检查类型安全。

     4.@EnableAutoConfiguration:自动配置。

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

     6.@Autowired:自动导入,默认byType,可以与@Qualifie("") 结合起来,根据名字和类型注入。

     7.@Resource:自动导入,默认buName。

     8.@PathVariable:获取参数。

     9.@Service:用于标注业务层组件

     10.@Slf4j :注解在类上;为类提供一个 属性名为log 的 Slf4j日志对象。

     11.@Table(name=""):表明这是一个实体类。

@TableName("T_USER")

     12.@JsonIgnore:作用是json序列化时将Javabean中的一些属性忽略掉,序列化和反序列化都受影响。

     13.@Data:注解在实体类上,减少Setter和Getter代码。

     14.@NoArgsConstructor:注解在实体类上,为类提供一个无参的构造方法。

     15.@AllArgsConstructor:注解在实体类上,为类提供一个全参的构造方法。

     16.@ControllerAdvice:统一处理异常,包含@Component,可以被扫描到。

     17.@ExceptionHandler(Exception.class):用在方法上面表示遇到这个异常就执行以下方法。

     18.@Bean:用@Bean标注方法等价于XML中配置的bean。

     19.@Value:注入Spring boot application.properties配置的属性的值。

     20.@Accessors:@Accessors(chain = true)开启链式编程。

User user = new User().setId(1).setName("杜小月").setSex("女");//链式编程