最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot整合jersey的示例代碼

 更新時間:2017年09月27日 15:05:28   作者:Angela_Feng  
本篇文章主要介紹了SpringBoot整合jersey的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

這篇文章主要從以下幾個方面來介紹。簡單介紹下jersey,springboot,重點介紹如何整合springboot與jersey。

  • 什么是jersey
  • 什么是springboot
  • 為什么要使用springboot+jersey
  • 如何整合springboot與jersey

什么是jersey

閱讀官方文檔請點擊:jsersey。RESTful Web Services in Java即java中的一種restful框架。jersey使用了JAX-RS規(guī)范來約束API的開發(fā)。既然jersey是基于restful風(fēng)格的框架,那么什么是restful呢,主要有以下幾點:

  • 在rest認為,一切都可以被稱為資源。
  • 每個資源都由uri標識。要訪問這個資源,必須通過對應(yīng)的uri去訪問。
  • 訪問資源使用POST,GET,PUT,DELETE。POST為新增接口,GET為獲取接口,PUT為修改接口,DELETE為刪除接口。
  • 通過XML/JSON去通信
  • 每次請求都是獨立的。

什么是springboot

簡單介紹一下,Springboot是由spring衍生的一個框架,boot是輕量的意思,即輕量級的spring。Springboot繼承了spring的特性,但是呢,覺得spring太繁瑣,于是springboot就簡化了spring的配置,不需要寫復(fù)雜的配置文件就可以實現(xiàn)spring原有的功能特點。只需要在pom.xml中引入依賴就能實現(xiàn)各種模塊和技術(shù)的整合。

為什么要使用springboot+jersey

如果要實現(xiàn)rest,jersey是一個很不錯的選擇。springboot是java中一個輕量級的框架,能簡化配置,不復(fù)雜且功能齊全,因此結(jié)合起來使用,也是一個不錯的選擇。

如何整合springboot與jersey

1.創(chuàng)建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單元測試依賴(如不使用單元測試,可不加),引入依賴后在控制臺執(zhí)行命令 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)創(chuàng)建Springboot入口:Application.java,此時一個springboot的maven項目已經(jīng)創(chuàng)建成功,執(zhí)行main函數(shù)就可以啟動項目。(是不是確實很輕量級..?)

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中添加依賴,在控制臺執(zhí)行命令mvn install

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-jersey</artifactId>
</dependency>

(5)創(chuàng)建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() {
    //構(gòu)造函數(shù),在這里注冊需要使用的內(nèi)容,(過濾器,攔截器,API等)
  }
}

此時,基于jersey的springboot項目已經(jīng)搭建成功。我們寫demo來驗證一下。

(6)基于jersey的api使用

配置文件:

創(chuàng)建項目的配置文件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已經(jīng)完成,我們可以通過瀏覽器或其他工具訪問接口,訪問路徑:http://localhost:8081/demo/city,返回JSON字符串:{“id”:1,”cityName”:”beijing”,”cityCode”:”001”}。

項目代碼地址:https://github.com/fengqing0216/learning.git

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • FF瀏覽器和IE下載文件亂碼問題的解決方法

    FF瀏覽器和IE下載文件亂碼問題的解決方法

    大家可以看到如下截圖,下載文件出現(xiàn)了亂碼,在其他瀏覽器(IE,Chrome....)上沒有出現(xiàn)這個問題,解決方法很簡單,遇到類似問題的朋友可以了解下哦
    2013-08-08
  • SpringBoot3整合Nacos?V2.3.2的詳細過程

    SpringBoot3整合Nacos?V2.3.2的詳細過程

    本文介紹了如何在?Spring?Boot?3.2.x?項目中整合?Nacos?2.3.2,包括依賴配置、Nacos?服務(wù)發(fā)現(xiàn)與動態(tài)配置的配置方法,通過整合?Nacos,Spring?Boot?應(yīng)用可以實現(xiàn)高效的服務(wù)發(fā)現(xiàn)、動態(tài)配置管理以及分布式系統(tǒng)中的靈活擴展,感興趣的朋友跟隨小編一起看看吧
    2024-11-11
  • 啟動 Eclipse 彈出 Failed to load the JNI shared library jvm.dll 錯誤的解決方法

    啟動 Eclipse 彈出 Failed to load the JNI shared library jvm.dll

    這篇文章主要介紹了有時候,新電腦上回碰到打開Eclipse時,彈出提示“Failed to load the JNI shared library jvm.dll”錯誤,這里給大家分享解決方案
    2016-08-08
  • Mybatis不啟動項目直接測試Mapper的實現(xiàn)方法

    Mybatis不啟動項目直接測試Mapper的實現(xiàn)方法

    在項目開發(fā)中,測試單個Mybatis Mapper方法通常需要啟動整個SpringBoot項目,消耗大量時間,本文介紹通過Main方法和Mybatis配置類,快速測試Mapper功能,無需啟動整個項目,這方法使用AnnotationConfigApplicationContext容器
    2024-09-09
  • 滴滴二面之Kafka如何讀寫副本消息的

    滴滴二面之Kafka如何讀寫副本消息的

    這篇文章主要給大家介紹了關(guān)于滴滴二面之Kafka如何讀寫副本消息的相關(guān)資料,文中通過實例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2022-01-01
  • Java編程在方法中哪些時候需要參數(shù)

    Java編程在方法中哪些時候需要參數(shù)

    這篇文章主要介紹了Java編程在方法中哪些時候需要參數(shù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Spring的@Scheduled 如何動態(tài)更新cron表達式

    Spring的@Scheduled 如何動態(tài)更新cron表達式

    這篇文章主要介紹了Spring的@Scheduled 如何動態(tài)更新cron表達式的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • RestTemplate設(shè)置超時時間及返回狀態(tài)碼非200處理

    RestTemplate設(shè)置超時時間及返回狀態(tài)碼非200處理

    這篇文章主要為大家介紹了RestTemplate設(shè)置超時時間及返回狀態(tài)碼非200處理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • Java導(dǎo)出txt文件的方法

    Java導(dǎo)出txt文件的方法

    這篇文章主要介紹了Java導(dǎo)出txt文件的方法,實例分析了兩種java導(dǎo)出txt文本文件的使用技巧,需要的朋友可以參考下
    2015-05-05
  • java通過cglib動態(tài)生成實體bean的操作

    java通過cglib動態(tài)生成實體bean的操作

    這篇文章主要介紹了java通過cglib動態(tài)生成實體bean的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02

最新評論

静安区| 安塞县| 丰原市| 雷波县| 富民县| 大竹县| 琼海市| 清水河县| 勐海县| 沭阳县| 雷山县| 洪洞县| 云林县| 巴中市| 绍兴市| 修水县| 兖州市| 简阳市| 昌乐县| 定州市| 盐源县| 浦江县| 库车县| 乐平市| 抚宁县| 乡城县| 崇明县| 灵台县| 松桃| 湖北省| 通州区| 钟祥市| 东丽区| 广东省| 枣强县| 夏邑县| 连南| 安溪县| 铜梁县| 虎林市| 轮台县|