JWS

JWS

是指与webservice相关的J2EE(其实现在应该叫做Java EE吧)技术叫做 JWS(全称就是 java webservice)。没错,jws指的就是 javawebservice

Jws含有的技术

  1. JAX-WS
  2. JAX-RS
  3. JAXB
  4. JAXR
  5. SAAJ
  6. StAX

简要说一下 JAX-WS 和JAX-RS
JAX-WS全称是JavaTM API forXML-Based Web Services
JAX-RS :全称是 JavaTM API forRESTful Web Services
而jaxb是java xml binding,是jax-rs jax-ws底层使用的对象与xml之间转换的工具
网上说关于JAX-WS与JAX-RS有这么说的: 两者是不同风格的SOA架构。前者以动词为中心,指定的是每次执行函数。而后者以名词为中心,每次执行的时候指的是资源。
感觉这个说法比较靠谱,JAX-WS是面向消息的,每次请求的时候指定了请求的方法。JAX-RS是面向资源的。后则将网络上的东西当做一种资源,每次请求都是对该资源进行操作,比如对资源的增删查改。
在网上看到这么一句话:JAVA 中共有三种WebService 规范,分别是JAXM&SAAJ、JAX-WS(JAX-RPC)、JAX-RS。我暂时不清楚他们能不能叫做webservice服务规范,而且这个服务规范是什么意思?
JAX-WS规范是一组XML web services的JAVA API,这样会不会好理解一点?规范和API什么关系啊。。。。为什么规范是java api (请原谅我这么咬文嚼字。。。)

我的理解就是他们只是集成在java平台里边的API,这个API是用来实现不同风格的JWS的。人们把这一套API叫做web服务规范。因为他们的设计目标不一样,前者JWS-WS为实现基于soap协议的Web Service提供的API,SOAP协议比较强大。而后者JWS-RS是为基于REST设计风格的WebServcice提供的API。
关于REST这么说,它是一种架构,而不是一种标准。目前我对他得理解还不够深刻,暂不做深述。

然后我们再结合一部分框架,就能够很轻松(至少框架的目的是这样)的实现Web Service。
支持JAX-WS服务规范的框架有:CXF,Axis,Xfile
CXF、Axis2、XFire 结合java语言均可可实现JAX-WS(我理解不了这句话是什么意思,为什么是实现JAX-WS。。是应该指的是那种基于soap协议的,webservice吧)
支持JAX-RS服务规范的框架有:
CXF——XFire和Celtix的合并(一个由IONA赞助的开源ESB,最初寄存在ObjectWeb上)。
Jersey——Sun公司的JAX-RS参考实现。
RESTEasy——JBoss的JAX-RS项目。
Restlet——也许是最早的REST框架了,它JAX-RS之前就有了。 http://www.restlet.org/downloads/stable
我想,意思是这些框架结合JAX-WS能够实现RET风格的webservice吧,因为JAX-WS不是指的是API么?上述说法令人费解。。
好吧吗,我们就假定认为结合这些框架在结合java平台提供的一些API我们就能够分别实现 soap协议风格的webservice,或者实现 REST风格的Web Service。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java JWS(JSON Web Signature)签名是一个用于保护和验证数据完整性的机制,它结合了三个基本元素:头部、载荷和签名。 ### JSON Web Header (JWT Header) JWS头包含了有关该签名的数据元信息,例如算法类型(如 HMAC-SHA256 或 RSA 签名),以及任何自定义的头字段。 ### Payload (载荷) 这是包含实际数据的部分,通常以JSON格式存储。这可以包括用户ID、访问令牌有效期等信息。 ### Signature (签名) 通过计算包含头和载荷的信息散列并将其与秘密密钥结合生成的结果。这个步骤确保了数据在传输过程中未被篡改,并验证了消息发送者的身份。 #### 实现过程: 1. **创建Header**:指定使用的加密算法和版本等信息。 2. **构造Payload**:放置需要被安全传输的数据,比如用户信息、访问权限等。 3. **生成Signature**:使用预先约定的秘密键和头部信息对Payload进行哈希处理,然后将此哈希值与秘密键相结合,形成最终的签名。 ### 使用场景: JWS签名主要用于确保数据在互联网上传输时的安全性和完整性,常见于API请求的认证、OAuth授权协议、微服务之间的通信等场景。 #### 安全注意事项: - **密钥管理**:JWS的安全性依赖于密钥的安全分发和管理。必须确保私有密钥不被未经授权的人获取。 - **时间限制**:通常在Token中会携带过期时间戳,避免长时间有效的Token造成安全隐患。 - **安全性审查**:定期检查和更新密钥策略及实现细节,防范新的攻击手段和技术漏洞。 ### 相关问题: 1. JWS是如何确保数据完整性的? 2. Java中有哪几种常见的JWS库可供选择? 3. 如何在JWT中添加自定义头信息?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值