成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

利用Tomcat發(fā)布基于Maven所構(gòu)建的Jersey RESTful Web Service

tianhang / 2541人閱讀

摘要:一關(guān)于架構(gòu)這詞是在他年的博士論文中提出的。具體的可以看構(gòu)建實現(xiàn)的例子?;陧椖繉ο竽P偷母拍?,可以從中央信息管理項目的構(gòu)建,報告和文檔。后續(xù)會繼續(xù)完善和版本的環(huán)境的搭建,以及基于容器項目部署。

一、關(guān)于RESTful架構(gòu)

REST這詞是Roy Thomas Fielding在他2000年的博士論文中提出的。他利用REST定義了互聯(lián)網(wǎng)軟件的架構(gòu)原則,即Representational State Transfer縮寫,直譯過來就是“表現(xiàn)層狀態(tài)轉(zhuǎn)化”,如果一個架構(gòu)符合REST原則,就稱它為RESTful架構(gòu)。REST所指向的是在互聯(lián)網(wǎng)中資源屬性,其指明的是“Resources”的表現(xiàn)層,即概括成就是可以利用REST原則構(gòu)建API能夠找到獨一無二的“資源實體”,如圖片、音頻、特定的數(shù)據(jù)等。簡單概述RESTful架構(gòu)有以下幾個重點:

1.每一個URI代表一種資源;
2.客戶端和服務(wù)器之間,傳遞這種資源的某種表現(xiàn)層;
3.客戶端通過四個HTTP動詞(GET、POST、PUT、DELETE)對服務(wù)器端資源進(jìn)行操作,實現(xiàn)“表現(xiàn)層狀態(tài)轉(zhuǎn)化”。
具體的可以看構(gòu)建實現(xiàn)的例子。
二、關(guān)于Jersey、Maven

Jersey是JAX-RS(The Java API for RESTful Web Service)標(biāo)準(zhǔn)的參考實現(xiàn),是Java領(lǐng)域中最純正的REST服務(wù)開發(fā)框架。
Apache Maven是一款軟件項目管理和理解工具?;陧椖繉ο竽P停≒OM)的概念,Maven可以從中央信息管理項目的構(gòu)建,報告和文檔。

三、具體實踐 1.依賴環(huán)境JDK、Maven、Tomcat

安裝JDK和Maven時候需要注意的配置環(huán)境變量的問題,這其中需要注意的是下載的Maven和Tomcat都是需要時Binary 包,這樣就可以直接解壓后就可以直接運行無需編譯:

1.1.mac環(huán)境下:

可以利用vim ~/.bash_profile來配置JDK和Maven的環(huán)境變量PATH,配置完成后執(zhí)行source ~./bash_profile來讓配置文件生效

#JDK
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH
#Maven
export M2_HOME=/Users/bing/apache-maven-3.5.22
export PATH=$PATH:$M2_HOME/bin

驗證是否配置好,可以在terminal上面輸入mvn -v命令看,系統(tǒng)是否識別如下圖:

1.2.Windows環(huán)境下:可以通過高級系統(tǒng)設(shè)置來配置環(huán)境變量
2.利用mvn命令來創(chuàng)建webapp的例子(以mac環(huán)境下為例)
sudo mvn archetype:generate -DarchetypeArtifactId=jersey-quickstart-webapp 
                -DarchetypeGroupId=org.glassfish.jersey.archetypes -DinteractiveMode=false 
                -DgroupId=com.example -DartifactId=simple-service-webapp -Dpackage=com.example 
                -DarchetypeVersion=2.26

cd simple-service-webapp
sudo mvn clean package


這樣就已經(jīng)把剛才構(gòu)建基于maven所構(gòu)建的Jersey RESTful Web Service的war就已經(jīng)同mvn構(gòu)建好了
如下圖

3.啟動Tomcat來發(fā)布此Web Service項目

在Apache Tomcat下載Binary的包后,通過Terminal終端進(jìn)入Tomcat的bin目錄下

bash startup.sh


如此便是已經(jīng)將web service部署到了Tomcat中了,并且已經(jīng)發(fā)布了
這樣就可以通過URI來訪問我們的項目資源,如在原來的項目中所需要留意的兩個地方是,第一個是webapp文件夾下web.xml,如下圖




    
        Jersey Web Application
        org.glassfish.jersey.servlet.ServletContainer
        
            jersey.config.server.provider.packages
            com.example
        
        1
    
    
        Jersey Web Application
        /webapi/*
    

其中的/webapi/*中webapi就是訪問路徑一個名字,
第二個是項目中具體的java類所定義接口的中path路徑,在此項目中就是MyResource.java

@Path("myresource")
public class MyResource {

    /**
     * Method handling HTTP GET requests. The returned object will be sent
     * to the client as "text/plain" media type.
     *
     * @return String that will be returned as a text/plain response.
     */
    @GET
    @Produces(MediaType.TEXT_PLAIN)
    public String getIt() {
        return "Got it!";
    }
}

所以上手的樣例所要訪問的URI是:
http://localhost:8080/simple-service-webapp/webapi/myresource/

這樣就可以開始項目具體業(yè)務(wù)的開發(fā)了。

后續(xù)會繼續(xù)完善Windows和Linux版本的環(huán)境的搭建,以及基于Docker容器項目部署。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/71170.html

相關(guān)文章

  • JAX-RS 2.0 中 REST 四種服務(wù)類型

    摘要:當(dāng)不存在子類,也不存在子類時,規(guī)范中定義,在這種情況下,為服務(wù)動態(tài)生成一個名為的實例,并自動探測匹配資源。其中是中的基類,它繼承于情況二當(dāng)不存在子類,但是存在子類時。以上就是規(guī)范中定義的四種服務(wù)的方式。 最近在學(xué)習(xí) jersey 框架。他是 目前比較流行的 基于 JAX-RS 2.0 規(guī)范實現(xiàn)的 RESTful 框架。 我是跟著 《Java RESTful Web Service 實...

    bbbbbb 評論0 收藏0
  • SpringBoot整合Jersey2.x實現(xiàn)文件上傳API

    摘要:的官方文檔中將調(diào)用的入口稱作,而在的示例代碼中將其命名為,其實指的是同一個東西。其次是類至此,一個文件上傳的服務(wù)端接口已經(jīng)編寫完成。 前言 SpringBoot的官方文檔中關(guān)于Jersey的介紹并不是很全面: 27.3 JAX-RS and Jersey,SpringBoot-Sample項目里面也只有非?;A(chǔ)的代碼,對于一些復(fù)雜的常用需求,這個文檔給不了任何幫助。 為了使用Jerse...

    andot 評論0 收藏0
  • 國外程序員整理Java資源大全

    摘要:日期和時間處理日期和時間的函數(shù)庫。使用中可觀察序列,創(chuàng)建異步基于事件應(yīng)用程序的函數(shù)庫。為分布式系統(tǒng)提供延遲和容錯處理。發(fā)布使用本機(jī)格式分發(fā)應(yīng)用程序的工具。將程序資源和打包成和的本機(jī)文件。圖像處理用來幫助創(chuàng)建評估或操作圖形的函數(shù)庫。 好資源要分享原文 譯者 唐尤華 翻譯自 github akullpp 構(gòu)建 這里搜集了用來構(gòu)建應(yīng)用程序的工具。 Apache Maven:Mave...

    chengtao1633 評論0 收藏0
  • Spring Boot QuickStart (1)

    摘要:開始介紹簡化了基于的應(yīng)用開發(fā),你只需要就能創(chuàng)建一個獨立的,產(chǎn)品級別的應(yīng)用。該包含很多搭建,快速運行項目所需的依賴,并提供一致的,可管理傳遞性的依賴集。日志級別通過標(biāo)識開啟控制臺級別日志記錄,也可以在中指定日志級別配置示例 開始 介紹 Spring Boot 簡化了基于 Spring 的應(yīng)用開發(fā),你只需要 run 就能創(chuàng)建一個獨立的,產(chǎn)品級別的 Spring 應(yīng)用。 Spring 平臺...

    klinson 評論0 收藏0
  • Spring Boot 參考指南(構(gòu)建系統(tǒng))

    摘要:構(gòu)建系統(tǒng)強烈建議你選擇一個支持依賴管理的構(gòu)建系統(tǒng),并且可以使用發(fā)布到中心存儲庫的工件。例如,要升級到另一個,你可以將以下元素添加到你的在前面的示例中,我們指定了一個,但是任何依賴類型都可以以相同的方式被覆蓋。 13. 構(gòu)建系統(tǒng) 強烈建議你選擇一個支持依賴管理的構(gòu)建系統(tǒng),并且可以使用發(fā)布到Maven中心存儲庫的工件。我們建議你選擇Maven或Gradle,可以讓Spring Boot與其...

    thursday 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<