CXF+Maven+Eclipse开发基于jax-rs规范的WebService

来源:互联网 发布:网页模板源码下载 编辑:程序博客网 时间:2024/05/22 04:28

看了很多帖子,摸索了很久mark一下自己的心得,第一次接触这个,之前也没有开发经验,所以很多东西都看了很久。也可能是学习能力不强的原因,所以大神忽略。

我采用的开发工具是EclipseJ2EE,自带很多插件,不用去下载,自己配置了一个本地maven,至于如何去配置,网上有教程,不赘述。新建一个maven工程,如图所示




用maven模板建好工程后,修改自动生成的pom.xml文件。cxf的包依赖,由于我是在jetty环境下测试的,故也添加了jetty插件。pom文件如下

<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>org.fudan</groupId>  <artifactId>jetty</artifactId>  <version>0.0.1-SNAPSHOT</version>  <packaging>jar</packaging>  <name>jetty</name>  <url>http://maven.apache.org</url>  <properties>    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  </properties>  <dependencies>    <dependency>      <groupId>junit</groupId>      <artifactId>junit</artifactId>      <version>3.8.1</version>      <scope>test</scope>    </dependency>        <dependency><groupId>org.apache.cxf</groupId><artifactId>cxf-bundle</artifactId><version>2.2.4</version></dependency><dependency><groupId>org.apache.cxf</groupId><artifactId>cxf-bundle-jaxrs</artifactId><version>2.2.4</version></dependency><dependency><groupId>org.apache.cxf</groupId><artifactId>cxf-rt-core</artifactId><version>2.2.4</version></dependency><dependency><groupId>org.apache.cxf</groupId><artifactId>cxf-rt-frontend-jaxrs</artifactId><version>2.2.4</version></dependency>  </dependencies>  <build> <plugins>              <plugin>                  <groupId>org.mortbay.jetty</groupId>                  <artifactId>maven-jetty-plugin</artifactId>                  <configuration>                      <contextPath>/</contextPath>                      <connectors>                          <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">                              <port>9000</port>                          </connector>                      </connectors>                  </configuration>              </plugin>              <plugin>                  <groupId>org.apache.maven.plugins</groupId>                  <artifactId>maven-compiler-plugin</artifactId>                  <configuration>                      <source>1.5</source>                      <target>1.5</target>                  </configuration>              </plugin>          </plugins>            </build>    </project>

配置好pom文件后,新建一个hello类


hello类的代码如下

package org.fnlp.WebService;import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.PathParam;  import javax.ws.rs.Produces;@Path("/hello")public class hello {@Path("/echo/{input}")@GET@Produces("text/plain")public String sayHi(@PathParam("input") String input){System.out.println("tets");return input;}}

再新建一个sever类

package org.fnlp.WebService;import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;public class server {    public static void main(String[] args) throws Exception {    JAXRSServerFactoryBean factory = new JAXRSServerFactoryBean();        factory.setServiceClass(hello.class);                factory.setAddress("http://localhost:9001");        factory.create();        System.out.println("Server start...");    }}

然后在windows的命令行模式下进入到工程目录,然后输入 mvn clean install命令,maven会自动下载所需要的包到maven的本地仓库中,然后在Eclipse中运行server类,将服务启动后,在浏览器中输入http://localhost:9001/hello/echo/ffas测试,可以看到浏览器窗口显示ffas。至此,最简单的restful架构就搭建起来了。










0 0
原创粉丝点击