首页 > 代码库 > 使用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