激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - SpringBoot整合jersey的示例代碼

SpringBoot整合jersey的示例代碼

2021-01-11 14:29Angela_Feng Java教程

本篇文章主要介紹了SpringBoot整合jersey的示例代碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

這篇文章主要從以下幾個方面來介紹。簡單介紹下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父依賴

?
1
2
3
4
5
6
<!-- 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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<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函數就可以啟動項目。(是不是確實很輕量級..?)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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

?
1
2
3
4
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-jersey</artifactId>
</dependency>

(5)創建jersey配置文件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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,如下:

?
1
2
3
4
spring:
name: local
server:
  port: 8081

資源,即API,這里以get方法為例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
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配置(有兩種注冊方式,注冊類,注冊包):

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://blog.csdn.net/github_38395241/article/details/70265379

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 在线播放污 | 精品国产一区二区三区在线 | 综合成人在线 | 一级观看免费完整版视频 | 成人在线视频免费 | 国产免费资源 | 色婷婷久久一区二区 | 护士hd欧美free性xxxx | av免费在线观看免费 | 久久综合久久美利坚合众国 | 欧美一区二区三区四区电影 | 成人偷拍片视频在线观看 | 日本在线视频二区 | 午夜精品毛片 | 看黄在线 | 日本精品婷婷久久爽一下 | 国产精品爱久久久久久久 | 好吊一区二区三区 | 免费a级毛片大学生免费观看 | 亚洲电影在线观看高清免费 | 一级一级一级毛片 | 一本一本久久a久久精品综合小说 | 欧美日韩综合视频 | 久久久国产精品免费观看 | 天天草夜夜爽 | 欧美日本亚洲视频 | 久久影院免费观看 | 欧美一级毛片一级毛片 | 香蕉视频18 | 羞羞色院91精品网站 | 少妇一级淫片免费看 | 国产精品爱久久久久久久 | 久久久资源网 | 九九热这里只有精品8 | 日韩在线播放一区二区 | 综合激情网 | 91成人在线免费观看 | h视频免费看 | 成人啪啪18免费网站 | 毛片视频网站 | 亚洲午夜久久久久 |