基于spring+cxf框架webService接口开发(1)--服务器端

WebService接口开发(Spring+cxf)

服务器端(认证+加密)

导入Apache  cxf.jar包

什么是cxf

CXF是建立在SOAP协议上的一个Web service框架。

什么是SOAP协议?

简单来说就是两个不同项目(开发语言不同等)通过xml文件来描述要传输的东西,然后通过HTTP协议传输,接收方把收到的xml解析成需要的对象使用,返回的时候将xml封装又通过http协议传输,如此就是SOAP协议。而CXF就是两个项目之间为了提供服务,而开发的一个开源框架,使用CXF框架可以快速搭建web service。CXF就是将项目中暴露出来的接口(服务)包装起来,成为wsdl,使用方通过wsdl来调用这些服务

具体实现

spring和cxf进行集成jaxws:server配置

CXF原生支持spring,可以和Spring无缝集成。以下是通过tomcat启动容器来启动cxf服务

什么是jax-ws

 JAX-WS规范是一组基于XML web servicesJAVA APIJAX-WS允许开发者可以选择RPC-oriented或者message-oriented 来实现自己的web services
  在 JAX-WS中,一个远程调用可以转换为一个基于XML的协议例如SOAP,在使用JAX-WS过程中,开发者不需要编写任何生成和处理SOAP消息的代码。JAX-WS的运行时实现会将这些API的调用转换成为对应的SOAP消息。

服务器端,用户只需要通过Java语言定义远程调用所需要实现的接口SEIservice endpoint interface),并提供相关的实现,通过调用JAX-WS的服务发布接口就可以将其发布为WebService接口。

在客户端,用户可以通过JAX-WSAPI创建一个代理(用本地对象来替代远程的服务)来实现对于远程服务器端的调用。

pom配置cxf以及spring相应的依赖

可从apache官方网站下载 apache-cxf-2.1.2.zip 然后从apache-cxf-2.1.2/lib 目录中获得所需要的jar包。

配置webService.xml(spring-ws-fcms.xml)

插入jaxws库

导入cxf包下的文件

定义拦截器

cxf集成到web容器中web.xml

服务器开发过程

cxf通过拦截器来实现认证,通过md5实现加密 (头部认证)

拦截器分类

  1. 按所处的位置分:服务器端拦截器(in),客户端拦截器(out
  2. 按消息的方向分:入拦截器,出拦截器
  3. 按定义者分:系统拦截器,自定义拦截器

AbstractPhaseInterceptor(自定义拦截器) 实现用户名与密码的检验

LoggingInInterceptor(系统日志入拦截器类) 使用日志拦截器,实现日志记录

LoggingOutInterceptor(系统日志出拦截器类) 使用日志拦截器,实现日志记录

自定义拦截器进行密码加密以及用户名和密码的认证

定义webservice接口,作为服务的入口(加上@webService注解)

@WebService 注释用于将 Java 类标记为实现 Web Service 或者将服务端点接口 (SEI) 标记为实现 Web Service 接口。

只有被@WebService注解的组件,才会被SimpleJaxWsServiceExporter发现并导出为服务类

 

定义服务器接口实现类 获取数据(json串)

通过jaxws:service发布服务(webService.xml)

serviceClass:发布的服务器实现的接口

address:发布的地址 (名字)

jaxws:serviceBean:指定服务具体提供者(实现类对象)

jaxws:inInterceptors:入拦截器

jaxws:outInterceptors:出拦截器

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值