1. TypeReference
使用fastJson反序列化的时候用到
2. MoreObjects.firstNonNull
返回第一个不为空的对象
3. RowBounds
逻辑分页。之前一直没有注意,还以为最后也是limit,结果查资料后发现是逻辑分页,即取出所有满足条件的数据,然后舍弃掉前面offset条数据,然后再取剩下的数据的limit条
mybatis 分页 RowBounds和PageHelper性能评测
4. @ApiOperation
5. @JsonNaming注解
与PropertyNamingStrategy结合,项目中用到的是PropertyNamingStratgey.SnakeCaseStrategy,之后代码中的驼峰命名会转变为下划线。
6. pageHelper
项目中使用了pageHelper插件,需要注意的是spring boot项目引用的 版本是不同的
pageHelper-spring-boot-starter
7. @Transactional
该注解只能被用到public方法上。
其他的目前还没有注意到,等后续踩坑。
8. @ResponseBody @ResquestBody
@ResponseBody作用在方法上,表示该方法的返回结果直接写入Http response body中,一般在异步获取数据时使用ajax,在使用@RequestMapping之后,返回值会被解析为跳转路径,加入@ResponseBody注解后,返回结果不会被解析为跳转路径,而是直接写入response body中。
@RequestBody将Http请求正常插入到方法中,使用合适的HttpMessageConverter将请求体写入某个对象。
@Controller和@RestController的区别?
9. @NoArgsConstructor @requiredArgsConstructor @AllArgsConstructor
@requiredArgsConstructor, @AllArgsContructor。使用这三个annotation来完成项目中对于不同构造方法的需求。
@NoArgsConstructor : 生成一个无参数的构造方法,这个annotation在与其他的annotation配合起来使用的时候更加能凸显出他的重要性,例如在使用hibernate这种框架的时候,如果有一个有参数的构造方法的时候,NoArgsConstructor会展示出他的作用。
@requiredArgsConstructor: 会生成一个包含常量,和标识了NotNull的变量 的构造方法。生成的构造方法是private,如何想要对外提供使用可以使用staticName选项生成一个static方法。
@AllArgsContructor: 会生成一个包含所有变量,同时如果变量使用了NotNull annotation , 会进行是否为空的校验。
@NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor
10. @EnableScheduling
@Scheduled注解配合@EnableScheduling使用,实现定时任务。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。