成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

使用IntelliJ IDEA新建Java Web后端resfulAPI模板

付倫 / 2680人閱讀

摘要:加載完成之后,項(xiàng)目會(huì)多出一個(gè)目錄。將剛剛創(chuàng)建的名為目錄設(shè)置為,設(shè)置為。然后在目錄下依次新建三個(gè)包,就是我們的然后在中新建類。同樣的地方新建類。是因?yàn)闆](méi)有在中沒(méi)有引入對(duì)的依賴。就可以看到會(huì)新建一個(gè)瀏覽器標(biāo)簽頁(yè)。

初始化項(xiàng)目

打開IntelliJ IDEA,我的版本是Version 2018.1.4。點(diǎn)擊Create New Project。在左側(cè)的列表中選擇Maven。然后在右側(cè)勾選Create from archetype。

然后在右側(cè)的列表中選擇org.apache.maven.archetypes:maven-archetype-webapp。點(diǎn)擊next。

填寫GroupId和ArtifactId。GroupId定義了項(xiàng)目屬于哪個(gè)組織,例如,我們需要使用一個(gè)包,名字叫做fastjson,用戶在項(xiàng)目中返回json數(shù)據(jù)的,是阿里的開源框架,被不少企業(yè)使用,是一個(gè)極其優(yōu)秀的Json框架。它的groupId是com.alibaba,artifactId是fastjson。

簡(jiǎn)單理解一下,拿Github舉個(gè)例子。GroupId就相當(dāng)于是你的用戶名,而ArtifactId就相當(dāng)于是你的具體某個(gè)項(xiàng)目的名稱,也是我們當(dāng)前的項(xiàng)目的根目錄名稱。例子如下。

GroupId: com.detectivehlh.test
ArtifactId: testDemo

點(diǎn)擊next,下兩頁(yè)不用設(shè)置,直接點(diǎn)擊next。此時(shí)新建項(xiàng)目成功,右下角會(huì)彈出一個(gè)提示框,上面寫著Maven projects need to be imported.此時(shí)選擇Enable Auto-Import。就可以看到項(xiàng)目開始自動(dòng)的去加載依賴包了。加載完成之后,項(xiàng)目會(huì)多出一個(gè)src目錄。

引入jersey和servlet

打開根目錄下pom.xml文件,在dependencies標(biāo)簽中添加如下代碼,引入servlet。


    org.glassfish.jersey.containers
    jersey-container-servlet
    2.22.2

打開/src/main/webapp/WEB_INF/web.xml。在web-app標(biāo)簽之間添加如下代碼。


    JAX-RS Servlet
    org.glassfish.jersey.servlet.ServletContainer
    
        jersey.config.server.provider.packages
        com.detectivehlh.test
    
    1


    JAX-RS Servlet
    /api/*
新建項(xiàng)目目錄和文件

在/src/main目錄下新建java、resources目錄,java放項(xiàng)目java源代碼,resources放項(xiàng)目的靜態(tài)資源文件。

打開File中的Project Structure,或者使用快捷鍵,command + ;就可以快捷打開了。將剛剛創(chuàng)建的名為java目錄設(shè)置為Sources,resources設(shè)置為Resources。然后Apply。然后在java目錄下依次新建com.detectivehlh.test三個(gè)包,就是我們的GroupId.

然后在com.detectivehlh.test中新建Hello類。代碼如下。

package com.detectivehlh.test;

import com.alibaba.fastjson.JSONObject;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import java.util.ArrayList;
import java.util.List;

@Path("/hello")
public class Hello {
    @Path("get")
    @GET
    @Produces(MediaType.APPLICATION_JSON)
    public Response getStudent() {
        List lists = new ArrayList();
        lists.add(new Student("1","mayun",23));
        lists.add(new Student("2","mahuateng",24));
        lists.add(new Student("3","zhouhongyi",25));
        JSONObject json = new JSONObject();
        return Response.status(Response.Status.OK).entity(json.toJSONString(lists)).build();
    }
}

同樣的地方新建Student類。代碼如下。

package com.detectivehlh.test;

public class Student {
    private String id;
    private String name;
    private int age;

    public Student(String id, String name, int age) {
        this.id = id;
        this.name = name;
        this.age = age;
    }

    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

}
引入fastjson

這個(gè)時(shí)候可以看到,Hello的class中有報(bào)錯(cuò)。是因?yàn)闆](méi)有在pom.xml中沒(méi)有引入對(duì)fastjson的依賴。在根目錄下的pom.xml中添加如下依賴。


    com.alibaba
    fastjson
    1.2.21

再回到Hello中就可以看到?jīng)]有錯(cuò)誤信息了。

配置Tomcat

選擇頂部菜單欄中的Run->Edit Configurations。點(diǎn)擊左側(cè)的+,選擇Tomcat Server->local。配置好Tomcat后,選擇Server旁邊的Deployment標(biāo)簽,點(diǎn)擊下方的+,選擇Artifact,選擇testDemo:war exploded。點(diǎn)擊Apply。然后點(diǎn)擊右上角的長(zhǎng)得像播放鍵的按鈕,啟動(dòng)項(xiàng)目。
就可以看到會(huì)新建一個(gè)瀏覽器標(biāo)簽頁(yè)。顯示"Hello World!",然后改變?yōu)g覽器中的路由為我們寫的接口的路由,/api/hello/get。就可以看到返回的json數(shù)據(jù)了。

歡迎光臨 個(gè)人博客

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/76877.html

相關(guān)文章

  • 開發(fā)利器之IntelliJ IDEA學(xué)習(xí)筆記

    摘要:旨在記錄自己的學(xué)習(xí)過(guò)程,方便日后遇到問(wèn)題是及時(shí)查閱復(fù)習(xí),另一方面也希望能幫助像筆者一樣從來(lái)沒(méi)使用過(guò)的人快速熟悉。 這篇文章主要記錄的是本人學(xué)習(xí)使用IntelliJ IDEA的筆記,可能不是特別的詳細(xì)。旨在記錄自己的學(xué)習(xí)過(guò)程,方便日后遇到問(wèn)題是及時(shí)查閱復(fù)習(xí),另一方面也希望能幫助像筆者一樣從來(lái)沒(méi)使用過(guò)IDEA的人快速熟悉IDEA。文章錯(cuò)誤之處還請(qǐng)各位大佬批評(píng)指正。(文末有本人的微信公眾號(hào),...

    馬永翠 評(píng)論0 收藏0
  • Java后端

    摘要:,面向切面編程,中最主要的是用于事務(wù)方面的使用。目標(biāo)達(dá)成后還會(huì)有去構(gòu)建微服務(wù),希望大家多多支持。原文地址手把手教程優(yōu)雅的應(yīng)用四手把手實(shí)現(xiàn)后端搭建第四期 SpringMVC 干貨系列:從零搭建 SpringMVC+mybatis(四):Spring 兩大核心之 AOP 學(xué)習(xí) | 掘金技術(shù)征文 原本地址:SpringMVC 干貨系列:從零搭建 SpringMVC+mybatis(四):Sp...

    joyvw 評(píng)論0 收藏0
  • IntelliJ idea使用Maven創(chuàng)建Spring+SpringMVC+Hibernate

    摘要:地址不使用,創(chuàng)建的方法新建選擇和需要選擇,下載相關(guān)的會(huì)在下新建配置文件應(yīng)用服務(wù),配置需選擇,下載下載,請(qǐng)稍等目錄結(jié)構(gòu)配置配置在下,新建目錄變更配置如果在中有標(biāo)的數(shù)字,請(qǐng)點(diǎn)擊,選擇配置模塊配置選擇目錄下的文件夾添加目錄結(jié)構(gòu)配置文件修改 github地址:https://github.com/rongyaya10... 不使用Maven,創(chuàng)建SSH(Spring+SpringMVC+Hib...

    wing324 評(píng)論0 收藏0
  • IntelliJ IDEA:File and code templates

    摘要:變量,最后呈現(xiàn)時(shí)會(huì)被實(shí)際值替換。如果非空,則為聲明增加由變量指明的包名。命令被用來(lái)在該或者說(shuō)文件中插入另一個(gè)名為的的內(nèi)容。然后這個(gè)聲明了一個(gè)并使用變量存儲(chǔ)了新文件的名字指明的類名。也就是說(shuō)要正常工作必須依靠的。 IntelliJ IDEA:File and code templates 官方文檔傳送門 File templates是一套在創(chuàng)建一個(gè)新的文件時(shí)被自動(dòng)生成的內(nèi)容的規(guī)范。取決于...

    SimpleTriangle 評(píng)論0 收藏0
  • 使用Intellij IDEA 解決Java8的數(shù)據(jù)流問(wèn)題

    摘要:使用解決的數(shù)據(jù)流問(wèn)題原文譯者飛龍協(xié)議在年三月發(fā)布,距離現(xiàn)在年三月五號(hào)快有一年了。除了,最實(shí)用的特性是新的數(shù)據(jù)流。是吧,注是瀏覽器上的數(shù)據(jù)流的接口,并解決了上述問(wèn)題。 使用Intellij IDEA 解決Java8的數(shù)據(jù)流問(wèn)題 原文:Fixing Java 8 Stream Gotchas with IntelliJ IDEA 譯者:飛龍 協(xié)議:CC BY-NC-SA 4.0 ...

    dreamGong 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<