2CXF学习之 二、使用Maven构建CXF Spring Hibernate MySql项目.docx_第1页
2CXF学习之 二、使用Maven构建CXF Spring Hibernate MySql项目.docx_第2页
2CXF学习之 二、使用Maven构建CXF Spring Hibernate MySql项目.docx_第3页
2CXF学习之 二、使用Maven构建CXF Spring Hibernate MySql项目.docx_第4页
2CXF学习之 二、使用Maven构建CXF Spring Hibernate MySql项目.docx_第5页
免费预览已结束,剩余2页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

二、使用Maven构建CXF+Spring+Hibernate+MySql项目2.1 Maven构建Spring项目2.2 在pom中添加CXF的dependency接着向maven的pom文件中添加引用cxf的dependency。添加两个groupId为org.apache.cxf,artifactId 分别为cxf-rt-frontend-jaxws和cxf-rt-transports-http的jar包。也可将下面代码直接copy到dependencies结点内部。mavne将自动下载所依赖的jar包。如果使用jetty,则需要添加cxf-rt-transports-http-jetty。XML代码org.apache.cxfcxf-rt-frontend-jaxws2.4.0jarcompileorg.apache.cxfcxf-rt-transports-http2.4.0jarcompile2.3 配置web.xml文件将web.xml文件更改为:XML代码webAppRootKeyliming.cxf.examplecontextConfigLocation/WEB-INF/dispatcher-servlet.xmlorg.springframework.web.context.ContextLoaderListenerCharacterEncodingFilterorg.springframework.web.filter.CharacterEncodingFilterencodingUTF-8forceEncodingtrueCharacterEncodingFilter/*CXFServletorg.apache.cxf.transport.servlet.CXFServlet1CXFServlet/*2.4配置Spring的配置文件添加jaxws的schema: XML代码导入cxf的配置文件,此时这三个xml文件是在cxf的jar包的META-INF中:XML代码2.5 编写测试服务类2.5.1编写接口HelloWorldService需要在此结果上添加WebService注解。Java代码WebServicepublicinterface HelloWorldService String test_string(String message); WebParam 注释是必要的,因为 java 接口的.class文件中不存储参数名称。所以如果你不使用注释您的参数将命名为 arg0。2.5.2编写实现类HelloWorldImpl需要在此结果上添加WebService注解,并附带参数endpointInterface,指定所实现的接口类全名。Java代码WebService(endpointInterface = liming.cxf.example.service.HelloWorldService)publicclass HelloWorldServiceImpl implements HelloWorldService /* * 传递字符串 */Overridepublic String test_string(String message) returnhello + message;2.6在Spring配置文件中添加服务端点需要使用到jaxws:endpoint标签来定义服务端点。有两种方式:1. 定义一个全新的bean为服务端点。此方式首先确定在Service的实现类上,添加了WebService注解。XML代码2. 使Spring定义好的bean成为服务端点。此时的Service是使用Spring的Service(value=”)注解的,其中value为此Bean的id。在Impl类上添加service注解Java代码Service(liming.student.manager.service.impl.HelloWorldServiceImpl)WebService(endpointInterface = liming.cxf.example.service.HelloWorldService)Public class HelloWorldServiceImpl implements HelloWorldService /* * 传递字符串 */Overridepublic String test_string(String message) returnhello + message;在implementor中填写bean的名称(前面需加井号)。XML代码其中的属性:id:在Spring容器内的bean的id。implementor:指定实现类。若使用spring中定义好的bean,此处使用#+bean的id,例如implementor =# helloWorldServiceImpl 。address:指定服务端点的请求地址。这是一个相对路径。2.7 编写客户端这里,我们使用JUnit编写一个客户端。首先是Spring的配置文件,唯一与服务器端不一样的这里是使用jaxws:client声明客户端。XML代码然后类中使用Autowired注解就可以自动绑定上他的引用。完整的测试类代码为:Java代码RunWith(value = SpringJUnit4ClassRunner.class)ContextConfiguration(value = test-client-servlet.xml)publicclass TestWebServiceClient Autowiredprivate HelloWorldService helloWorldServiceClient;Testpublicvoid test_string() System.out.println(helloWorldServiceC

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论