搭建java web service(Eclipse+Tomcat)--学习笔记

来源:互联网 发布:中国软件千股千评 编辑:程序博客网 时间:2024/05/17 21:59

结合[How to build RESTful Service with Java using JAX-RS and Jersey (Example)]对搭建web service 总结如下:
步骤1:部署tomcat服务器:
下载Apache tomcat从下面链接,放置到合适位置,并解压。
步骤2: 创建Dynamic Web Project, 名字为WebserviceDemo
Eclipse –>File –> New –> Dynamic Web Project; 如下图:

这里写图片描述

点击New Runtime添加一个tomcat环境,如下图所示(用的是tomcat 8.5版):

这里写图片描述
点击finish,项目创建成功。
步骤3
检查创建的项目\WebContent\WEB-INF\下是否有web.xml 文件,如果不存在,right click - ->java EE tools –>Generate Deployment Descriptor Stub;然后\WebContent\WEB-INF\ 会出现web.xml
如下图所示:
这里写图片描述

步骤4
把新建项目转换为Maven Project,并添加一些依赖的 .jar包
Steps:Right click on project -> Configure -> Convert to Maven Project.
这里写图片描述
打开pom.xml选择Dependencies选项添加依赖.jar包:

  • asm.jar
  • jersey-bundle.jar
  • json.jar
  • jersey-server.jar

这里写图片描述

这是pom.xml里的内容

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">        <modelVersion>4.0.0</modelVersion>        <groupId>WebserviceDemo</groupId>        <artifactId>WebserviceDemo</artifactId>        <version>0.0.1-SNAPSHOT</version>        <packaging>war</packaging>        <build>            <sourceDirectory>src</sourceDirectory>            <plugins>                <plugin>                    <artifactId>maven-compiler-plugin</artifactId>                    <version>3.5.1</version>                    <configuration>                        <source>1.8</source>                        <target>1.8</target>                    </configuration>                </plugin>                <plugin>                    <artifactId>maven-war-plugin</artifactId>                    <version>3.0.0</version>                    <configuration>                        <warSourceDirectory>WebContent</warSourceDirectory>                    </configuration>                </plugin>            </plugins>        </build>        <dependencies>            <dependency>                <groupId>asm</groupId>                <artifactId>asm</artifactId>                <version>3.3.1</version>            </dependency>            <dependency>                <groupId>com.sun.jersey</groupId>                <artifactId>jersey-bundle</artifactId>                <version>1.18</version>            </dependency>            <dependency>                <groupId>org.json</groupId>                <artifactId>json</artifactId>                <version>20140107</version>            </dependency>            <dependency>                <groupId>com.sun.jersey</groupId>                <artifactId>jersey-server</artifactId>                <version>1.8</version>            </dependency>        </dependencies>    </project>

web.xml文件

<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xmlns="http://xmlns.jcp.org/xml/ns/javaee"    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"    version="3.1">    <display-name>WebserviceDemo</display-name>    <welcome-file-list>        <welcome-file>index.html</welcome-file>        <welcome-file>index.htm</welcome-file>        <welcome-file>index.jsp</welcome-file>        <welcome-file>default.html</welcome-file>        <welcome-file>default.htm</welcome-file>        <welcome-file>default.jsp</welcome-file>    </welcome-file-list>    <servlet>        <servlet-name>Jersey Web Application</servlet-name>        <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>        <init-param>            <param-name>com.sun.jersey.config.property.packages</param-name>            <param-value>king.service.com</param-value>        </init-param>        <load-on-startup>1</load-on-startup>    </servlet>    <servlet-mapping>        <servlet-name>Jersey Web Application</servlet-name>        <url-pattern>/service/*</url-pattern>    </servlet-mapping></web-app>

步骤5 创建 Add.java

package king.service.com;/** * @Author king * @date 2017-05-03 * */import javax.ws.rs.GET;import javax.ws.rs.Path;import javax.ws.rs.PathParam;import javax.ws.rs.Produces;@Path("/add")public class Add {    @GET    @Produces("application/xml")    public String Add(){            Double a = 10.0;            Double b = 15.0;            Double sum = a + b;            return "<AddService>"+"<num-one>"+ a +"</num-one>"+"<num-two>"+ a +"</num-two>"+ "<sum>"+ sum +"</sum>"+"</AddService>";    }    @Path("/{c}/{d}")       @GET    @Produces("application/xml")    public String Add(@PathParam("c") Double c, @PathParam("d") Double d){        Double sum = c + d;        return "<AddService>"+"<num-one>"+ c +"</num-one>"+"<num-two>"+ d +"</num-two>"+ "<sum>"+ sum +"</sum>"+"</AddService>";    }}

步骤6 clean eclipse workspace and build project

1. Project -> Clean2. Project -> Right click -> Maven -> Update Project3. Project -> Right click -> Run As.. -> Maven Build (option 5) -> Add "clean install" -> Run

执行效果图如下:
run as

这里写图片描述

这里写图片描述

步骤7 在Tomcat上部署WebserviceDemo。

  • Click Server Tab
  • Right click on Server
  • Click on Add and Remove Projects
  • Selection project from left side and click on Add
  • Click finish

这里写图片描述

步骤8:启动Tomcat Server

这里写图片描述
步骤9 访问Webservice
浏览器输入:http://localhost:8080/WebserviceDemo/service/add/返回xml格式的数据
这里写图片描述
带参数访问:http://localhost:8080/WebserviceDemo/service/add/123/234
这里写图片描述
以上步骤详细总结了一个简单的webservice的例子;

0 0