1.创建maven项目.
a.配置maven环境变量MAVEN_HOME.
b.创建一个文件夹,命名为rest-server.
rest-server为项目的名称.
c.在rest-server目录下创建一个pom.xml文件.
pom.xml文件中配置的是项目需要用到的jar文件.
d.在rest-server目录下创建一个层级目录src/main/java.
src/main/java层级目录用来存放项目的代码;
e.在运行窗口通过运行mvn eclipse:myeclipse-clean eclipse:myeclipse命令构建rest-server项目.
此命令目的是为rest-server项目下载配置在pom.xml文件中的jar文件.
注意:pom.xml文件中有一个标签是<packaging>,如果里面放war,构建的是web项目,默认构建的是jar项目.
2.创建基于wink的rest服务器.
a.将上面构建好的rest-server项目引入到myeclipse中.
b.在web.xml中为所有rest服务通过/rest/*配置映射,映射到RestServerApplication中.
"http://127.0.0.1:8080/rest-server/rest/register"对其进行访问了.
3.按照第一步创建名为rest-client的项目,并构建成jar项目.
4.创建基于wink的rest客户端.
a.将上面构建好的rest-client项目引入到myeclipse中.
点击链接http://download.csdn.net/detail/sidongxue2/7086365下载源代码!
a.配置maven环境变量MAVEN_HOME.
b.创建一个文件夹,命名为rest-server.
rest-server为项目的名称.
c.在rest-server目录下创建一个pom.xml文件.
pom.xml文件中配置的是项目需要用到的jar文件.
d.在rest-server目录下创建一个层级目录src/main/java.
src/main/java层级目录用来存放项目的代码;
e.在运行窗口通过运行mvn eclipse:myeclipse-clean eclipse:myeclipse命令构建rest-server项目.
此命令目的是为rest-server项目下载配置在pom.xml文件中的jar文件.
注意:pom.xml文件中有一个标签是<packaging>,如果里面放war,构建的是web项目,默认构建的是jar项目.
2.创建基于wink的rest服务器.
a.将上面构建好的rest-server项目引入到myeclipse中.
b.在web.xml中为所有rest服务通过/rest/*配置映射,映射到RestServerApplication中.
RestServerApplication继承jrs中的Application,用来管理所有服务,直接看代码.
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4"
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">
<display-name>rest-server</display-name>
<servlet>
<servlet-name>server</servlet-name>
<servlet-class>org.apache.wink.server.internal.servlet.RestServlet</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.iluck.rest.server.RestServerApplication</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>server</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
</web-app>
package com.iluck.rest.server;
import java.util.HashSet;
import java.util.Set;
import javax.ws.rs.core.Application;
/**
* @author IluckySi
* @date 20140323
*/
public class RestServerApplication extends Application {
private Set<Object> svc_singletons = new HashSet<Object>();
private Set<Class<?>> svc_classes = new HashSet<Class<?>>();
public RestServerApplication() {
svc_singletons.add(RestServerServiceImpl.getInstance());
}
@Override
public Set<Object> getSingletons() {
return svc_singletons;
}
@Override
public Set<Class<?>> getClasses() {
return svc_classes;
}
}
c.创建rest服务器,服务器相对简陋一些,只接受来自客户端的GET请求,直接看代码.
package com.iluck.rest.server;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
/**
* @author IluckySi
* @date 20140323
*/
@Path("/register")
public interface RestServerService {
@GET
public String register();
}
package com.iluck.rest.server;
/**
* @author IluckySi
* @date 20140323
*/
public class RestServerServiceImpl implements RestServerService {
private static RestServerServiceImpl instance = null;;
public synchronized static RestServerServiceImpl getInstance() {
if(instance == null) {
instance = new RestServerServiceImpl();
}
return instance;
}
public String register(){
System.out.println("Hello, Maven and Wink!");
return "success";
}
}
d.完成上面的步骤好,部署rest-server项目,启动tomcat,然后就可以通过url
"http://127.0.0.1:8080/rest-server/rest/register"对其进行访问了.
3.按照第一步创建名为rest-client的项目,并构建成jar项目.
4.创建基于wink的rest客户端.
a.将上面构建好的rest-client项目引入到myeclipse中.
b.客户端的开发和服务器端的开发相比较简单很多,直接看代码.
package com.ilucky.rest.client;
import org.apache.wink.client.Resource;
import org.apache.wink.client.RestClient;
/**
* @author IluckySi
* @date 20140321
*/
public class RestClientService {
public static void main(String[] args) {
try {
RestClient restClient = new RestClient();
Resource resource = restClient.resource("http://192.168.72.153:8080/rest-server/rest/register");
resource.get(String.class);
} catch (Exception e) {
e.printStackTrace();
}
}
}
c.rest-client项目是一个jar项目,直接运行就可以看到结果了.
5.如上两个项目用到的pom.xml文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<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>com.ilucky.rest</groupId>
<artifactId>rest-server</artifactId>
<version>1.0.0</version>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>org.apache.wink</groupId>
<artifactId>wink-server</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.3</version>
</dependency>
</dependencies>
</project>
<?xml version="1.0" encoding="UTF-8"?>
<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>com.ilucky.rest</groupId>
<artifactId>rest-client</artifactId>
<version>1.0.0</version>
<dependencies>
<dependency>
<groupId>org.apache.wink</groupId>
<artifactId>wink-client</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.3</version>
</dependency>
</dependencies>
</project>
总结:如上是用maven创建的一个基于wink的rest服务的小例子,希望能帮助到您!
点击链接http://download.csdn.net/detail/sidongxue2/7086365下载源代码!