WebService小总结

WebService作用:

     实现多个系统之间的数据通信


技术点:

     主要提供了2个技术点:

JAX_WS: 传输数据,就是XML格式,基于 SOAP 协议

JAX_RS(平时开发主流使用方式): 传输数据,传输 XML 格式或JSON 格式,基于 HTTP 协议

 

为什么使用RS而不使用WS:

      主要原因就是RS是Restful风格的服务

 

RESTful的优点:

         1.基于这种风格架构,软件编写可以更简洁

         2.基于 HTTP 协议, 支持多种消息格式,比如 XML 、JSON

         3.更易于实现缓存机制 (第一次访问资源 缓存,第二次访问资源,返回304 客户端调用本地)

         4. 访问服务器统一资源,采用不同 HTTP 协议请求方式,服务器端可以得知进行 CRUD 哪个操作

              @GET 查询 @PUT 修改@POST 增加 @DELETE 删除

 

怎么发布服务:

1.实体类user,写@xmlRootElement(name=”user”)

userService:@path(“/userService”,address=”/userService”)

findbyid:@path(“/user”)

              @@GET(请求方式)

              @produces({application/xml,application/json})//返回数据给客户端(accept)

              @consumers({application/xml,application/json})//接收客户端传过来的参数(type)

接受参数:/user/{id}=====@pathParam(“id”)String id

Localhost:9999/project/userServcie/user?id=1  @queryParam(“id”)

 

访问路径怎么写:

根路径:localhost:9999/cxf_rs_spring

Web.xml:<url-pattern>/services/*</url-pattern>

Application-context.xml:address=”/userService”`

服务接口:@path(“/user”)

整合路径:

     localhost:9999/cxf_rs_spring/services/userService/user

 

最终访问资源服务路径

服务器根目录地址 +web.xml 配置 + applicationContext.xml address 配置 + 类 @Path +

方法 @Path





总结二:

1.    两种:

Jax-ws:基于soap协议,只支持xml格式传输(在公司中很少用)

Jax-rs:基于http协议,支持xml/json格式传输(在公司中经常用)

2.    jax-ws的使用:

1.    发布服务:

a)     创建实体类(不需要写注解,jdk1.6以后支持)

b)     接口(类:@WebService声明服务,方法体:@WebMethod声明方法)

c)     实现接口(endpointInterface:声明接口的全限定类名,servicename:无实际意义

d)     Application_context.xml中发布服务

<jaxws:server id="userService" address="/userService"

    serviceClass="cn.itcast.cxf.service.IUserService">

<jaxws:serviceBean>

           <bean class="cn.itcast.cxf.service.UserServiceImpl"/>

    </jaxws:serviceBean>

</jaxws:server>

E)web.xml:servlet

2.    调用服务

a)     发布服务的生成一个jar包,导入调用该服务的工程中

b)     通过接口来进行调用

3.    jax-rs:

1.    发布服务:

a)     实体类(@xmlRootElement:对象转换为xml格式)

b)     Service接口:

请求方式:@post,@put,@get,@delete

路径:@path(url)

接收参数:@consumer(application/xml, application/json)

Localhost:9999/bos_management/userService/user/{id}:@pathParam(“id”)

Localhost:9999/bos_management/userService/user?id=1:@queryParam(i

返回值:@produces(application/xml, application/json)

c)     id:唯一标识,address=”/userServcie”:方法该服务的路径

servicebeans:实现类的全限定类名

2.    调用服务:

WebClient:create(url),accept(接收服务端返回值:@produces),

Type(发送参数到服务端@consumer),get(类型.class

4路径问题:localhost:9002/crm_management

1.    web.xml:/services/*

2.    application-context.xml:address=”/userService”

3.    接口中的:@path(“/user”)

4.    概述:

WebService是一套标准的协议,是为了统一这个发布调用服务的规范,两种格式一种是基于soap协议的,支持xml格式数据的传输,一种是基于http协议的,支持xml/json格式的传输。按照协议来发布、调用服务。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值