首页 > 代码库 > 使用Maven 、Jersey 和google protobuf 创建REST web service. windows7 32bit
使用Maven 、Jersey 和google protobuf 创建REST web service. windows7 32bit
1.本文参考链接:
http://shijunjuan.iteye.com/blog/1812642(主要是本链接)
http://sleeplessinslc.blogspot.com/2010/03/restful-representation-with-google.html(另外一个方法)
proto buf 的安装方法:http://www.cnblogs.com/xinsheng/p/3879145.html
proto buf github 地址:https://github.com/google/protobuf/blob/master/README.md
tomcat插件:http://blog.csdn.net/seuxiaoqi/article/details/6003549
tomcat 下载请自行处理!我的版本是6.0
使用的环境是windows 32 Eclipse luna(32bit) JDK 1.8 maven(系统自带的)Tomcat(6.0)
2.首先在Eclipse中创建一个Maven Project :
这里跟我主要参考链接配置都一样
2.在src文件下 创建
test
test/java
main/java
三个文件夹
在整个工程目录下创建work 文件夹 for tomcat!
完成后整个工程目录如下:
3.整个工程细节:
工程配置文件pom.xml :(我用的proto 版本是2.5.0 这里是要自己下载的,我工程目录里面也带了。)有几次是因为我参考别人的工程,我使用的proto 编译器的版本跟eclipse 调用的版本不一样 所以不能运行纠结了很久。希望大家注意
服务器端:
所有展开的都是服务器端:
其中demo.pb 包只是用来使用proto编译器 生成.java 文件来的。这里引用了我主要参考链接的方式:
另外一种方式是 在pom.xml 使用maven-autorun-plugin 来自动生成 .直接在google 搜一下就能找到!
AddressBookResource.java :服务器声明的资源文件可以通过 get post 方式请求服务器
AddressBookStore.java 用来存储的一个服务器端小仓库,这里讲用户提交的数据放到了addressBooks.txt文件里面。
AddressBookProtos.java 使用proto 编译器生成的文件,我没有修改过
另外这两个文件我要说下一:
ProtobufMessageBodyReader.java
ProtobufMessageBodyWriter.java
这里是 protobuf 格式 服务器端的Reader 和 Writer 如果在tomcat中一切部署正常 ,tomcat能找到这两个Provider。我一会儿在后面贴出来效果
客户端:
这个客户端跟整个工程不是相连的,只是为了简单放在了一个工程下。
中心思想是通过url 方式访问服务器,测试提交、测试获取功能。
下面是我的工程:(放在百度云了)
http://pan.baidu.com/s/1qWt4jSC
其中Jerseydemo 是没有maven
Jerseydemo3 有maven
心得:
本工程主要是如何配置成功
1.如果你的工程会有红色但是你找不到在哪里: 试试
右键工程-》Maven ->update Project
2.tomcat 配置:
这里跟一般的tomcat工程不一样咯!
使用Maven 、Jersey 和google protobuf 创建REST web service. windows7 32bit