SpringBoot整合jersey的示例代码
发布时间 - 2026-01-11 03:26:44 点击率:次这篇文章主要从以下几个方面来介绍。简单介绍下jersey,springboot,重点介绍如何整合springboot与jersey。

- 什么是jersey
- 什么是springboot
- 为什么要使用springboot+jersey
- 如何整合springboot与jersey
什么是jersey
阅读官方文档请点击:jsersey。RESTful Web Services in Java即java中的一种restful框架。jersey使用了JAX-RS规范来约束API的开发。既然jersey是基于restful风格的框架,那么什么是restful呢,主要有以下几点:
- 在rest认为,一切都可以被称为资源。
- 每个资源都由uri标识。要访问这个资源,必须通过对应的uri去访问。
- 访问资源使用POST,GET,PUT,DELETE。POST为新增接口,GET为获取接口,PUT为修改接口,DELETE为删除接口。
- 通过XML/JSON去通信
- 每次请求都是独立的。
什么是springboot
简单介绍一下,Springboot是由spring衍生的一个框架,boot是轻量的意思,即轻量级的spring。Springboot继承了spring的特性,但是呢,觉得spring太繁琐,于是springboot就简化了spring的配置,不需要写复杂的配置文件就可以实现spring原有的功能特点。只需要在pom.xml中引入依赖就能实现各种模块和技术的整合。
为什么要使用springboot+jersey
如果要实现rest,jersey是一个很不错的选择。springboot是java中一个轻量级的框架,能简化配置,不复杂且功能齐全,因此结合起来使用,也是一个不错的选择。
如何整合springboot与jersey
1.创建maven项目
2.添加springboot配置。
(1)在pom.xml中添加springboot父依赖
<!-- Spring Boot 父依赖 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.1.RELEASE</version>
</parent>
(2)在pom.xml中添加springbootweb依赖和junit单元测试依赖(如不使用单元测试,可不加),引入依赖后在控制台执行命令 mvn clean install
<dependencies>
<!-- Spring Boot web依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>
(3)创建Springboot入口:Application.java,此时一个springboot的maven项目已经创建成功,执行main函数就可以启动项目。(是不是确实很轻量级..?)
package com.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* Created by Angela on 2017/4/20.
*/
@SpringBootApplication
public class Application {
public static void main(String[] args){
//springboot 入口
SpringApplication.run(Application.class,args);
}
}
(4)添加jersey依赖,在pom.xml中添加依赖,在控制台执行命令mvn install
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jersey</artifactId> </dependency>
(5)创建jersey配置文件
package com.demo.config.jersey;
import org.glassfish.jersey.server.ResourceConfig;
import org.springframework.stereotype.Component;
/**
* Created by Angela on 2017/4/20.
*/
@Component
public class JerseyConfig extends ResourceConfig {
public JerseyConfig() {
//构造函数,在这里注册需要使用的内容,(过滤器,拦截器,API等)
}
}
此时,基于jersey的springboot项目已经搭建成功。我们写demo来验证一下。
(6)基于jersey的api使用
配置文件:
创建项目的配置文件application.yml,指定name为local,端口号为8081,如下:
spring: name: local server: port: 8081
资源,即API,这里以get方法为例:
package com.demo.web;
import com.demo.model.City;
import org.springframework.stereotype.Component;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
/**
* Created by Angela on 2017/4/20.
*/
@Component
@Path("/demo")
public class Demo {
//path注解指定路径,get注解指定访问方式,produces注解指定了返回值类型,这里返回JSON
@Path("/city")
@GET
@Produces(MediaType.APPLICATION_JSON)
public City get(){
City city = new City();
city.setId(1L);
city.setCityName("beijing");
city.setCityCode("001");
System.out.println(city.toString());
return city;
}
}
jersey配置(有两种注册方式,注册类,注册包):
package com.demo.config.jersey;
import com.demo.web.Demo;
import org.glassfish.jersey.server.ResourceConfig;
import org.springframework.stereotype.Component;
/**
* Created by Angela on 2017/4/20.
*/
@Component
public class JerseyConfig extends ResourceConfig {
public JerseyConfig() {
//注册类的方式
// register(Demo.class);
//注册包的方式
packages("com.demo.web");
}
}
这里有个小坑。项目打为jar包启动时,不能使用包注册的方式,否则会报FileNotFound异常。
此时,demo已经完成,我们可以通过浏览器或其他工具访问接口,访问路径:http://localhost:8081/demo/city,返回JSON字符串:{“id”:1,”cityName”:”beijing”,”cityCode”:”001”}。
项目代码地址:https://github.com/fengqing0216/learning.git
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# SpringBoot整合jersey
# jersey
# SpringBoot
# 整合
# SpringBoot打War包上传到阿里云的LINUX服务器的操作方法
# springboot以FTP方式上传文件到远程服务器
# SpringBoot上传文件到本服务器 目录与jar包同级问题
# SpringBoot 如何优雅的实现跨服务器上传文件的示例
# springboot+jersey+tomcat实现跨域方式上传文件到服务器的方式
# 配置文件
# 会报
# 要使
# 就可以
# 都是
# 是一个
# 单元测试
# 在这里
# 有个
# 就能
# 请点击
# 是由
# 一切都
# 只需
# 要在
# 我们可以
# 很不错
# 或其他
# 几点
# 被称为
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
佛山网站制作系统,佛山企业变更地址网上办理步骤?
如何在IIS7上新建站点并设置安全权限?
Laravel如何配置Horizon来管理队列?(安装和使用)
在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?
如何用ChatGPT准备面试 模拟面试问答与职场话术练习教程
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
HTML5空格在Angular项目里怎么处理_Angular中空格的渲染问题【详解】
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
如何挑选高效建站主机与优质域名?
使用C语言编写圣诞表白程序
如何快速搭建高效服务器建站系统?
Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】
Laravel观察者模式如何使用_Laravel Model Observer配置
HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】
Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?
Bootstrap整体框架之JavaScript插件架构
Laravel如何使用Collections进行数据处理?(实用方法示例)
清除minerd进程的简单方法
如何快速搭建虚拟主机网站?新手必看指南
如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?
Laravel Blade模板引擎语法_Laravel Blade布局继承用法
Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理
网站制作软件有哪些,制图软件有哪些?
网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?
打开php文件提示内存不足_怎么调整php内存限制【解决方案】
js代码实现下拉菜单【推荐】
香港服务器如何优化才能显著提升网站加载速度?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
bootstrap日历插件datetimepicker使用方法
如何在橙子建站中快速调整背景颜色?
Laravel如何处理文件下载请求?(Response示例)
什么是JavaScript解构赋值_解构赋值有哪些实用技巧
北京企业网站设计制作公司,北京铁路集团官方网站?
Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布
PHP 500报错的快速解决方法
如何选择PHP开源工具快速搭建网站?
Laravel怎么在Blade中安全地输出原始HTML内容
如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体
UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】
常州企业网站制作公司,全国继续教育网怎么登录?
高端企业智能建站程序:SEO优化与响应式模板定制开发
如何在阿里云香港服务器快速搭建网站?
Laravel集合Collection怎么用_Laravel集合常用函数详解
JavaScript如何实现继承_有哪些常用方法
网站制作大概多少钱一个,做一个平台网站大概多少钱?
香港服务器租用费用高吗?如何避免常见误区?
Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制
东莞专业网站制作公司有哪些,东莞招聘网站哪个好?

