java 框架之Jersey+springboot 简单学习(一)
Jersey RESTful 框架是开源的RESTful框架, 实现了JAX-RS (JSR 311 & JSR 339) 规范。它扩展了JAX-RS 参考实现, 提供了更多的特性和工具, 可以进一步地简化 RESTful service 和 client 开发。尽管相对年轻,它已经是一个产品级的 RESTful service 和 client 框架。与Struts类似,它同样可以和hibernate,spring框架整合。
本文提供spring boot+jersey+mybatis plus简单学习。
一、mybatis plus:是Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效,API学习文档参考:Mybatis-Plus官方文档,具体用法整合spring boot:
1.1:引入mybatis plus依赖:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>2.3</version>
</dependency>
注:若引入mybatis-plus还需要自己配置映射文件等等操作,因此这里直接引入整合包,使用即可.
1.2:配置mybatis-plus:
#mapper文件路径:mybatis.mapper-locations=classpath*:/mapper/*Mapper.xml(这里是放在resource目录下)
#实体扫描,多个package用逗号或者分号分隔:mybatis.type-aliases-package=com.demo.entity
#驼峰下划线转换:db-column-underline: true(若系统需要)
#数据库大写下划线转换 #capital-mode: true(若系统需要)
其余配置参考:Mybatis-Plus官方文档
1.3:注册扫描Mapper接口:
我自己是使用的@Mapper进行注册,还可以在启动类上使用@MapperScan("com.demo.mapper")
1.4:在数据接口层继承mybatis plus提供的BaseMapper接口即可使用提供的CRUD方法。
2.1引入jersey spring boot 依赖:
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-jersey -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jersey</artifactId>
<version>2.0.2.RELEASE</version>
</dependency>
2.2:创建根资源类(同MVC的controller类似):
解释:
@Path()相对的uri路径,相当于@RequestMapping()。@GET, @PUT, @POST, @DELETE。资源方法是用资源方法指示符注释的资源类的方法。@Produces方法返回值类型如:MediaType.APPLICATION_JSON等同于:@ResponseBody。@Context用于获取与请求或响应相关的上下文Java类型如:@Context HttpServletRequest request。@Consumes:参数类型如:@Consumes(MediaType.APPLICATION_JSON)。@PathParam配合@path()使用可以将请求中的占位符参数映射到方法参数上,若需要读输入的参数进行校验可以使用validation校验注解进行参数校验,然后通过使用全局异常处理返回异常信息:
更过jersey文档参考:Jersey 2.27 User Guide
2.3:配置jersey web应用程序的资源配置。
继承ResourceConfig类:
注:这里有两种方式注册:①直接注册类使用register(T.class)。②使用包注册:papackage()当项目是jar启动时不能使用包注册方式。
更多Jersey文档参考:Jersey 2.27 User Guide。