[Java]在Eclipse中使用Jerjey(Jax-rs)创建API


简介

没有不使用maven或gradle的方法来实现它的方法不多,所以我来编写它。

Jerjey

的介绍

  • DL Jerjey的最新版本。

  • 解压缩jaxrs-ri-(版本).zip,并将[lib]文件的内容放入Eclipse使用的Tomcat的[lib]中。

创建一个项目

在Eclipse和中创建一个动态Web项目。
在它下面创建一个包[com.sample.api]和一个类[SampleApi.java]。

创建web.xml

在WebContent / WEB-INF中创建[web.xml],然后复制并粘贴以下内容。

filename.xml

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
<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
  version="2.4">

 <servlet>
  <servlet-name>jersey-app</servlet-name>
  <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
  <init-param>
    <param-name>jersey.config.server.provider.packages</param-name>
    <param-value>com.api.sample</param-value><!--パッケージ名-->
  </init-param>

  <init-param>
    <param-name>jersey.config.server.provider.classnames</param-name>
    <param-value>org.glassfish.jersey.media.multipart.MultiPartFeature</param-value>
</init-param>
 </servlet>

 <servlet-mapping>
  <servlet-name>jersey-app</servlet-name>
  <url-pattern>/api/*</url-pattern>
 </servlet-mapping>

  </web-app>

编辑ApiSample.java

在下面编辑第一个创建的ApiSample.java。

ApiSample.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
package com.api.sample;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;

@Path("/Sample")
public class ApiSample {
    @Path("/hello")
    @GET
    @Produces(MediaType.TEXT_HTML + "; charset=UTF-8")
    public String hello(@QueryParam("name") final String name){
        return "Hello!"+name+"さん。";
    }
}

运行

http://本地主机:8080 /项目名称/ api /示例/你好

结果
你好,没有

如果显示

,则
另外,http:// //本地主机:8080 /项目名称/ api /示例/ hello?名称= Yamada
如果输入

你好,山田先生

它应显示为