JSR311发布Restful WebService工程
背景知识? 参考资料:http://en.wikipedia.org/wiki/Representational_State_Transfer Jersey:? 参考资料:https://jsr311.dev.java.net/nonav/releases/1.0/spec/index.html Grizzly:? 参考资料:https://grizzly.dev.java.net/ 准备工作? 在Eclipse中建一个Java工程,名为jsr331,然后把下载的jersey-archive-1.1.2-ea.zip解压,将jersey-archive-1.1.2-ea/contribs、jersey-archive-1.1.2-ea/lib两个目录下的jar包,连同下载的grizzly-http-webserver-1.9.18a.jar都拷贝到jsr331工程下的lib目录,并加入到该工程的Build Path。(实测中,发现还需要引入一个包,下载地址:http://repository.jboss.org/maven2/org/jvnet/mimepull/1.2/mimepull-1.2.jar) 编写最简单的服务? 在jinxfei.test.jsr311.service下,建立HelloService类,内容如下:
代码中的注解(annotation)决定了程序发布成Web Service后的行为和特性。其中,HelloService类前面的@PATH,表明该Service的URL路径,这种类名前面带@PATH注解的类被称为Root Resource Class,因为他们决定了访问Service时URI中的第一级路径;@GET表示访问该服务使用HTTP GET方法;@Produces规定该服务返回结果的类型,这里的”text/plain”表名返回纯文本。 发布服务? 在jinxfei.test.jsr311包下创建ServiceDeployer类,内容如下: copy
在Eclipse中运行该类,控制台上打印“服务已启动”字样,表示系统启动成功,打开浏览器,输入:http://localhost:9876/hello,即可看到效果,如下图所示:
让功能再强一点点?
[xhtml]?
copy
重启ServiceDeployer,然后在浏览器中打开test.htm,表单中输入任意信息:? 然后点提交按钮,可以看到如下信息:? 这说明HelloService已经提取了表单参数,并回显给用户。 深入学习? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |