postman简介
Postman 最早是google的一个插件存在的,但是又google退出中国以及postman团队对工具的定位,主攻pc端app的开发及优化,现在的google插件已经很少再使用了,postman虽然是一个商用软件,但是对于我们普通用户来说,基本功能完全够用的。
Postman 从最初设计上就是为接口测试而生的,所以在程序员中广泛使用,在开发调试网络程序时跟踪一些网络请求,能够高效的帮助后端开发人员独立进行接口测试。
主要功能:
Postman是一款功能强大的网页调试、HTTP请求发送及接口测试用例运行的工具
能够模拟各种HTTP Request如GET、POST 、header、 PUT、 DELETE…等等
请求中还可以发送文件(图片、文本文件等)、额外的header等,实现特定的接口测试
能够高效的帮助后端开发人员独立进行接口测试
Postman提供了云服务,支持数据同步及团队协作等
提供了丰富的HTML格式的报告模板
不仅仅进行接口测试,而且是一个API管理工具
postman官网
https://www.postman.com/
postman的下载就自行了
建表
建表并插入书本数据,这里是使用的navicat工具mysql
DROPTABLEIFEXISTS`tb_books`;CREATETABLE`tb_books`(`id`int(11)NOTNULLAUTO_INCREMENT,`type`varchar(30)DEFAULTNULL,`name`varchar(40)DEFAULTNULL,`description`varchar(200)DEFAULTNULL,PRIMARYKEY(`id`))ENGINE=InnoDBAUTO_INCREMENT=51DEFAULTCHARSET=utf8mb4;INSERTINTO`tb_books`VALUES('1','测试111-----','测试书名111','测试描述111');INSERTINTO`tb_books`VALUES('3','小说','小说1','世界名著1');INSERTINTO`tb_books`VALUES('4','小说','小说2','世界名著2');INSERTINTO`tb_books`VALUES('5','小说','小说3','世界名著3');INSERTINTO`tb_books`VALUES('6','小说','小说4','世界名著4');INSERTINTO`tb_books`VALUES('7','小说','小说5','世界名著5');INSERTINTO`tb_books`VALUES('8','小说','小说6','世界名著6');INSERTINTO`tb_books`VALUES('9','小说','小说7','世界名著7');INSERTINTO`tb_books`VALUES('10','小说','小说8','世界名著8');INSERTINTO`tb_books`VALUES('11','小说','小说9','世界名著9');INSERTINTO`tb_books`VALUES('12','小说','小说10','世界名著10');INSERTINTO`tb_books`VALUES('13','小说','小说11','世界名著11');INSERTINTO`tb_books`VALUES('14','小说','小说12','世界名著12');INSERTINTO`tb_books`VALUES('15','小说','小说13','世界名著13');INSERTINTO`tb_books`VALUES('16','小说','小说14','世界名著14');INSERTINTO`tb_books`VALUES('17','小说','小说15','世界名著15');INSERTINTO`tb_books`VALUES('18','小说','小说16','世界名著16');INSERTINTO`tb_books`VALUES('19','小说','小说17','世界名著17');INSERTINTO`tb_books`VALUES('20','小说','小说18','世界名著18');INSERTINTO`tb_books`VALUES('21','小说','小说19','世界名著19');INSERTINTO`tb_books`VALUES('22','小说','小说20','世界名著20');INSERTINTO`tb_books`VALUES('23','测试1','测试书名1','测试描述1');INSERTINTO`tb_books`VALUES('24','测试11','测试书名11','测试描述11');INSERTINTO`tb_books`VALUES('25','java1','你好 修改1','测试内容1');INSERTINTO`tb_books`VALUES('47','测试1','测试书名1','测试描述1');INSERTINTO`tb_books`VALUES('48','测试11','测试书名11','测试描述11');INSERTINTO`tb_books`VALUES('49','java','springboot1','springboot1');INSERTINTO`tb_books`VALUES('50','java','springboot1','springboot1');
pom文件
注意有mybatis-plus依赖,因为使用mabatisplus做的
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.3.0</version></dependency><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.4.2</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>3.4.0</version></dependency><dependency><groupId>org.apache.velocity</groupId><artifactId>velocity-engine-core</artifactId><version>2.2</version></dependency><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><scope>runtime</scope></dependency></dependencies>
yaml文件
主要是连接数据库和设置端口号
server:
port:80
spring:
datasource:
driver-class-name:com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
username: root(用户名)
password: 密码
thymeleaf:
cache:false
mybatis-plus:
configuration:
log-impl:org.apache.ibatis.logging.stdout.StdOutImpl
mapper-locations: classpath:mapper/*.xml
model下Book类
importcom.baomidou.mybatisplus.annotation.IdType;importcom.baomidou.mybatisplus.annotation.TableId;importcom.baomidou.mybatisplus.annotation.TableName;importlombok.Data;@Data@TableName("tb_books")publicclassBook{@TableId(value ="id", type =IdType.AUTO)privateInteger id;privateString type;privateString name;privateString description;}
Dao接口
bookDao 继承自baseMapper,由plus提供
importcom.baomidou.mybatisplus.core.mapper.BaseMapper;importcom.iwei.model.Book;importorg.apache.ibatis.annotations.Mapper;@MapperpublicinterfaceBookDaoextendsBaseMapper<Book>{}
service
bookService
importcom.baomidou.mybatisplus.extension.service.IService;importcom.iwei.model.Book;publicinterfaceBookServiceextendsIService<Book>{}
bookServiceImpl
来实现这个接口,至于怎么实现的就不深究了。
importcom.baomidou.mybatisplus.extension.service.impl.ServiceImpl;importcom.iwei.dao.BookDao;importcom.iwei.model.Book;importcom.iwei.service.BookService;importorg.springframework.stereotype.Service;@ServicepublicclassBookServiceImplextendsServiceImpl<BookDao,Book>implementsBookService{}
其实做到这里我们还是可以在测试类中先来测试一下,来看看是否可以从数据库中读取数据,不过应该是成功的。
测试类中测试一下contextLoads
@SpringBootTestclassSpringboot0112ApplicationTests{@AutowiredprivateBookService bookService;@TestvoidcontextLoads(){List<Book> list= bookService.list();for(Book book:list){System.out.println(book);}}}
编写控制器
bookCnotroller,这里我们使用restful风格,调用bookService中的函数,然后我们在postman中进行get,post,put,delete测试
@RestController@RequestMapping("/books")//公共部分publicclassBookController{@ResourceprivateBookService bookService;@GetMappingpublicList<Book>books(){return bookService.list();}@GetMapping("{id}")//restful风格参数,?后面参数为查询串参数publicBookbook(@PathVariable("id")Integer id){return bookService.getById(id);}//Post,Put,Delete用工具发请求@PostMapping//借助工具使用postman或者swagger3,地址栏没办法测publicbooleanadd(@RequestBodyBook book){boolean flag =bookService.save(book);return flag;}@PutMapping("{id}")//修改publicbooleanupdate(@PathVariableInteger id,@RequestBodyBook book){
book.setId(id);boolean flag1=bookService.updateById(book);return flag1;}@DeleteMapping("{id}")//删除publicbooleandelete(@PathVariableInteger id){boolean flag2=bookService.removeById(id);return flag2;}}
postman中测试
获取数据(GET)
增加(POST)
注意json格式
修改(PUT)
删除(DEL)
版权归原作者 编程初学者01 所有, 如有侵权,请联系我们删除。