Jersey学习记录(一)--环境配置

时间:2021-03-20 13:14:54

最近公司项目在用jersey做api接口,遂来学习一下,学习的第一步,先运行起来一个项目,也就是环境配置好.

1.环境配置

对于IDEA来说可以直接引用包方式建立,这样的话在新建项目的时候勾选上WEB Application和RESTFUL WEB Service两个选项即可,不过maven流行起来,博主选择使用maven建立.

在pom.xml中引入:

      <!--jersey-->
        <dependency>
            <groupId>org.glassfish.jersey.containers</groupId>
            <artifactId>jersey-container-servlet</artifactId>
            <version>2.6</version>
        </dependency>

这里要说明下,2.x之后的jerser都归入glassfish下面了,以前的org.sun那个用的比较少了.引入后可以使用IDEA查看maven关系图,你会发现引入这的这个坐标包含了基本开发的全部依赖.

2.编写helloworld

package cn.mrdear.controller;

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

/** * @author Niu Li * @date 2016/7/24 */
@Path("/hello")
public class HelloWorldController {

    @GET
    @Produces(MediaType.TEXT_PLAIN)//指定返回类型为text_plain
    public String helloWorld(){

        return "hello world!";
    }
}

3.编写Application

import org.glassfish.jersey.filter.LoggingFilter;
import org.glassfish.jersey.server.ResourceConfig;

/** * @author Niu Li * @date 2016/7/24 */
public class RESTApplication extends ResourceConfig {
    public RESTApplication() {
        //给出要扫描的包,也就是上面heloword所在的包,扫描多个包使用分号隔开
        packages("cn.mrdear.controller");
        //打开日志,便于调试
        register(LoggingFilter.class);
    }
}

4.配置web.xml

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Archetype Created Web Application</display-name>

  <servlet>
    <servlet-name>jerseyServlet</servlet-name>
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
    <init-param>
      <param-name>javax.ws.rs.Application</param-name>
      <!--Application地址-->
      <param-value>cn.mrdear.application.RESTApplication</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>jerseyServlet</servlet-name>
    <!--过滤的路径名-->
    <url-pattern>/*</url-pattern>
  </servlet-mapping>

</web-app>

5.启动项目测试

Jersey学习记录(一)--环境配置

到此一个简单的helloword运行成功了

可以在后台日志看到Jersey的请求流程

参考资料:
https://waylau.gitbooks.io/jersey-2-user-guide/content/
https://jersey.java.net/documentation/latest/


项目示例:

SJM框架整合: https://github.com/nl101531/JavaWEB