常用注解

@RequestBody

用来接收前端传递给后端的json字符串中的数据的(请求体中的数据的)

@RestController

返回json数据所需注解

@RequestMapping

配置url映射

@JsonFormat

格式化字段

@ServletComponentScan

启用别名

@ServletComponentScan

在 Spring Boot启动类上使用@ServletComponentScan 注解后,使用@WebServlet、@WebFilter、@WebListener标记的 Servlet、Filter、Listener 就可以自动注册到Servlet容器中,无需其他代码。

@JsonInclude

隐藏字段  隐藏空字段:  @JsonInclude(JsonInclude.Include.NON_NULL)

@Configuration

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

@Bean

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

@PropertySource

通过@PropertySource注解将properties配置文件中的值存储到Spring的 Environment中,Environment接口提供方法去读取配置文件中的值,参数是properties文件中定义的key值。

@Repository

这是因为该注解的作用不只是将类识别为Bean,同时它还能将所标注的类中抛出的数据访问异常封装为 Spring 的数据访问异常类型。 Spring本身提供了一个丰富的并且是与具体的数据访问技术无关的数据访问异常结构,用于封装不同的持久层框架抛出的异常,使得异常独立于底层的框架

@WebListener

应用上下文监听

@Value

通过注解将常量、配置文件中的值、其他bean的属性值注入到变量中,作为变量的初始值。

swagger注解

@EnableSwagger2

使用swagger工具

@ApiOperation

swagger的接口说明

@ApiParam

使用在方法上或者参数上,字段说明;表示对参数的添加元数据(说明或是否必填等)

拦截器注解

@WebFilter

配置拦截的地址

定时任务注解

@EnableScheduling

启动类上添加@EnableScheduling开启定时任务,自动扫描

@Component

类上添加注解被容器扫描

@Scheduled

定时执行的方法加上注解

@Scheduled(cron = “*/1 * * * * *”)

crontab 实现每秒执行一次任务

crontab  在线工具 https://tool.lu/crontab/

@EnableAsync

启动类里面使用@EnableAsync注解开启异步任务功能,自动扫描

@Async

定义异步任务类并使用@Component标记组件被容器扫描,异步方法加上@Async

单元测试注解

@RunWith(SpringRunner.class)  //底层用junit  SpringJUnit4ClassRunner
@SpringBootTest(classes={DemoProjectApplication.class})//启动整个springboot工程

@Before

在做某一单元测试优先执行(相当于初始化)

@Test

进行单元测试注解(测试逻辑)

@After

测试完成执行的操作(资源的回收利用)

异常注解

@RestControllerAdvice

标记处理异常的类

@ExceptionHandler

处理哪一类异常 如Exception全局异常

@ControllerAdvice

使用全局类异常处理