1.建立maven webapp工程aty-rest。
2. 在pom文件增加spring框架、jax-rs接口、CXF实现
<dependency> <groupId>javax.ws.rs</groupId> <artifactId>javax.ws.rs-api</artifactId> <version>2.0</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>3.1.1.RELEASE</version> </dependency> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-frontend-jaxrs</artifactId> <version>3.0.0</version> </dependency>
3.编写rest接口和实现类
public interface INameService { @GET @Path("/welcome/") @Produces(MediaType.APPLICATION_JSON) public String welcome(); } // @Component("nameServiceImpl") public class NameServiceImpl implements INameService { public String welcome() { return "{\"name\":123}"; } }
4.web.xml中启动sping和cxf
<!-- Spring --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- CXF --> <servlet> <servlet-name>cxf</servlet-name> <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>cxf</servlet-name> <url-pattern>/rest/*</url-pattern> </servlet-mapping>
4.配置cxf-spring.xml,并在spring.xml中将其包含进去
<span style="font-size:18px;"><?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jaxrs="http://cxf.apache.org/jaxrs" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd"> <jaxrs:server address="/greet"> <jaxrs:serviceBeans> <ref bean="nameServiceImpl"/> </jaxrs:serviceBeans> </jaxrs:server> </beans></span>
5.用maven打包,将war部署到tomcat下。
一切正常即可通过http://127.0.0.1:8080/aty-rest/rest/greet/welcome访问我们发布的rest服务。
原文地址:http://blog.csdn.net/aitangyong/article/details/44996341