用Spring Boot编写RESTful API 学习笔记 添加依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency> <dependency> <…
用Spring Boot编写RESTful API 学习笔记 Transactional 判定顺序 propagation isolation 脏读 不可重复读 幻读 不可重复读是指记录不同 (update),幻读是数据条数不同 (insert, delete) 几种隔离的比较 isolation vs. lock 两个不同的东西,隔离不是靠锁实现的,是靠对数据的监控实现的 锁:表加好锁了,除非出现死锁等特殊状况,事务是不会被数据库主动回滚的 隔离:如果发现数据不符合相应的事务隔离级别,当前事务…
用Spring Boot编写RESTful API 学习笔记 概念 驱动模块 被测模块 桩模块 替代尚未开发完毕的子模块 替代对环境依赖较大的子模块 (例如数据访问层) 示例 测试 Service @RunWith(SpringRunner.class) @SpringBootTest public class TvSeriesServiceTest { @MockBean TvSeriesDao tvSeriesDao; @MockBean TvCharacterDao tvCharacter…
用Spring Boot编写RESTful API 学习笔记 程序的层次结构 相邻层级的数据传输 JavaBean 有一个 public 的无参构造方法 属性 private,且可以通过 get.set.is (可以替代 get,用在布尔属性上) 方法或遵循特定命名规范的其他方法访问 可序列化,实现 Serializable 接口 POJO & JavaBean POJO 比 JavaBean 更简单.POJO 严格地遵守简单对象的概念,而一些 JavaBean 中往往会封装一些简单逻辑 POJ…
用Spring Boot编写RESTful API 学习笔记 约束规则对子类依旧有效 groups 参数 每个约束用注解都有一个 groups 参数 可接收多个 class 类型 (必须是接口) 不声明 groups 参数是默认组 javax.validation.groups.Default 声明了 groups 参数的会从 Default 组移除,如需加入 Default 组需要显示声明,例如 @Null(groups={Default.class, Step1.class}) @Valid…
用Spring Boot编写RESTful API 学习笔记 RESTful API 介绍 REST 是 Representational State Transfer 的缩写 所有的东西都是资源,所有操作都通过对资源的增删改查 (CRUD) 实现 对资源的增删改查对应对 URL 的操作 (POST, DELETE, PUT, GET) 无状态的 URL 中都应该是名词,不应该出现动词 关于 RESTful API 更详细可参考阮一峰老师的 RESTful API 最佳实践 RestContro…
原文链接: Spring Boot 集成 Swagger 生成 RESTful API 文档 简介 Swagger 官网是这么描述它的:The Best APIs are Built with Swagger Tools. Swagger 是一套基于 OpenAPI 规范构建的开源工具,可以帮助我们设计.构建.记录以及使用 Rest API.Swagger 主要包含了以下三个部分: Swagger Editor:基于浏览器的编辑器,我们可以使用它编写我们 OpenAPI 规范. Swagger…
Swagger2可以在写代码的同时生成对应的RESTful API文档,方便开发人员参考,另外Swagger2也提供了强大的页面测试功能来调试每个RESTful API. 使用Spring Boot可以方便的集成Swagger2 1.新建Spring Boot项目 2.添加swagger依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</arti…
0 引言 在做服务端开发的时候,难免会涉及到API 接口文档的编写,可以经历过手写API 文档的过程,就会发现,一个自动生成API文档可以提高多少的效率. 以下列举几个手写API 文档的痛点: 文档需要更新的时候,需要再次发送一份给前端,也就是文档更新交流不及时. 接口返回结果不明确 不能直接在线测试接口,通常需要使用工具,比如postman 接口文档太多,不好管理 Swagger也就是为了解决这个问题,当然也不能说Swagger就一定是完美的,当然也有缺点,最明显的就是代码移入性比较强. 1…
欢迎访问我的个人网站:www.comingnext.cn 前言: 按照前面几篇文章里那样做,使用Django编写RESTful API的基本功能已经像模像样了.我们可以通过不同的URL访问到不同的资源,通过不同的HTTP请求来实现对资源的不同操作. 但是现在我们的API还有一个很明显的缺陷,那就是没有认证和权限功能,任何资源都会任何用户被随意更改,所以我们要改进程序,实现以下功能: snippet与其创建者相互关联 只有经过身份验证(登录)的用户才可以创建snippets 只有创建该snippe…