@controller 控制器(注入服务)
@service 服务(注入dao)
@repository(实现dao访问)
@component (把普通pojo实例化到spring容器中,相当于配置文件中的
@Data :省去实体类set/get方法。需要引入lombok包(找到lombok.jar 运行安装)
:@NoArgsConstructor : 生成一个无参数的构造方法
:@AllArgsConstructor :生成一个全参的构造方法
:@ToString:提供tostring方法
@JacksonXmlRootElement:实体类转json
@Slf4j:实现日志的输出,相当于private final Logger logger = LoggerFactory.getLogger(XXX.class);
@PropertySource("properties文件的路径") 的值是properties文件的路径
@ConfigurationProperties(prefix = ".配置文件key的前缀"),它可以把类的(.properties)配置信息自动封装成实体类
@Bean 是一个方法级别上的注解,主要用在@Configuration注解的类里,也可以用在@Component注解的类里。
@value 方式来获取*.porperties文件的内容。使用方式必须在当前类使用@Component
@ModelAttribute注解在方法参数上时,如果参数类型没有无参构造函数,那这个参数是必填的,当有无参构成函数,参数是非必填的
@PathVariable 用来获取请求路径上的值,常用于Restful接口
@RequestParam 绑定请求中的参数值,默认是必填的,可以根据required属性更改,还可根据defaultValue属性设置默认值
自动生成Api常用注解
@Configuration
注解,让Spring来加载该类配置
@EnableSwagger2
注解来启用Swagger2
@ApiOperation(value = “接口说明”, httpMethod = “接口请求方式”, response = “接口返回参数类型”, notes = “接口发布说明”;其他参数可参考源码;
@ApiParam(required = “是否必须参数”, name = “参数名称”, value = “参数具体描述”
@Api:用在类上,说明该类的作用 @ApiOperation:用在方法上,说明方法的作用
@ApiImplicitParams:用在方法上包含一组参数说明
@ApiImplicitParam:用在@ApiImplicitParams注解中,指定一个请求参数的各个方面
全局异常常用注解
@ExceptionHandler:统一处理某一类异常,从而能够减少代码重复率和复杂度
@ControllerAdvice:异常集中处理,更好的使业务逻辑与异常处理剥离开
@ResponseStatus:可以将某种异常映射为HTTP状态码
JPA常用注解
@Query与@Modifying执行更新操作
@Transient 非数据库字段
@Column:通过@Column注解设置,包含的设置如下
name:数据库表字段名
unique:是否唯一
nullable:是否可以为空
Length:长度
inserttable:是否可以插入
updateable:是否可以更新
@Query 自定义查询语句 JPQL
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
上面直接这么使用,在我们中国来讲和我们的北京时间,会相差8个小时,因为我们是东八区(北京时间)。所以我们在格式化的时候要指定时区(timezone )
基本注解
@Transactional:事物
@EnableScheduling:开启定时任务
@Scheduled(cron="***")://具体写法参考文档
@Aspect 注解 使之成为切面类 配合 @Component 注解 使用