Java Restful

fanix 2015-12-19

对于两个系统之间交互信息,有两种常见的方式:webservice和restful。

webservice简单理解就是一个系统开放出一个接口供别人调用,它注重的是方法的调用。

restful简单理解是通过抽象出网络资源,通过http来调用,它注重的是网络资源的抽象。

今天看一下个restful的实现框架,以一个例子来看看。

1.下载jerseyjar包;

2.在ecplise中创建一个web工程;

3.写一个类,如下:

@Path("/hello")
    public class HelloResource {
	@GET
	@Produces(MediaType.TEXT_PLAIN)
	public String sayHello() {
		return "Hello World!";
	}

	@GET
	@Path("/{param}")
	@Produces(MediaType.TEXT_XML)
	public String sayHelloToUTF8(@PathParam("param") String username) {
		return "<userName>"+username+"</userName>";
	}
    }

4.添加web.xml的内容

 
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	id="WebApp_ID" version="2.5">
	<display-name>RESTfulWS</display-name>
	<servlet>
		<servlet-name>Jersey REST Service</servlet-name>
		<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
		<init-param>
			<param-name>jersey.config.server.provider.packages</param-name>
			<param-value>com.waylau.rest.resources</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>Jersey REST Service</servlet-name>
		<url-pattern>/rest/*</url-pattern>
	</servlet-mapping>
</web-app>

5.测试

在浏览器中输入localhost:8089/RESTfulWS/rest/hello/Suger

相关推荐