- 浏览: 1499546 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (798)
- struts2 (42)
- servlet (20)
- quartz (4)
- jquery & ajax (24)
- tomcat (5)
- javascript (15)
- struts1 (8)
- 搜索关键字及链接 (3)
- fckeditor (3)
- Apache (5)
- spring (22)
- linux (3)
- 企业应用 (8)
- 综合应用 (13)
- 服务器 (2)
- 数据库 (85)
- 性能调优 (21)
- 网络应用 (15)
- 缓存技术 (8)
- 设计模式 (39)
- 面试题 (7)
- 程序人生&前辈程序员 (29)
- java基础 (59)
- hibernate (75)
- log4j (4)
- http (11)
- 架构设计 (28)
- 网页设计 (12)
- java邮件 (4)
- 相关工具 (11)
- ognl (7)
- 工作笔记 (18)
- 知识面扩展 (12)
- oracle异常 (1)
- 正则表达式 (2)
- java异常 (5)
- 项目实践&管理 (1)
- 专业术语 (11)
- 网站参考 (1)
- 论坛话题 (2)
- web应用 (11)
- cxf&webservice (22)
- freemarker (3)
- 开源项目 (9)
- eos (1)
- ibatis (6)
- 自定义标签 (3)
- jsp (3)
- 内部非公开文档(注意:保存为草稿) (0)
- 国内外知名企业 (2)
- 网店 (3)
- 分页 (1)
- 消费者习惯 (2)
- 每日关注 (1)
- 商业信息 (18)
- 关注商业网站 (1)
- 生活常识 (3)
- 新闻 (2)
- xml&JSON (5)
- solaris (1)
- apache.common (3)
- BLOB/CLOB (1)
- lucene (2)
- JMS (14)
- 社会进程 (8)
- SSH扩展 (2)
- 消费心理 (1)
- 珠三角 (1)
- 设计文档 (1)
- XWork&webwork (1)
- 软件工程 (3)
- 数据库及链接 (1)
- RMI (2)
- 国内外知名企业&人物 (1)
最新评论
-
司c马:
简介易懂、
OutputStream和InputStream的区别 -
在世界的中心呼喚愛:
解决我的问题
Java获取客户端的真实IP地址 -
bo_hai:
都是些基本的概念呀!
SSO -
tian_4238:
哥们,你也是搞水利这块的吧。
巧用SQLQuery中的addScalar -
loveEVERYday:
java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp小结
Web Service与SOA
web service是解决跨平台(OS)、跨语言(java、C等)系统间协作的一种技术方案。
既然是跨语言,所以其语言定义规范(WSDL)里没有“类”、“方法”这样面向对象语言才会有的概念。而是有“端口”(在java中可以视为“类”)和“操作”(在java中可以视为“方法”)这种概念。web service也没有严格的客户端、服务端的概念。因为系统间来来回回传输的数据都是XML,而且双方可以互相发起访问。 XML可以视为web service中类似java序列化这样的机制。因为java序列化的目的主要是保存和传输。但是web service并不只是支持java语言,或者说web service并不在乎对接系统是什么语言,只要交换的数据可以保存和传输就可以了。而XML是现今最佳也最广泛的选择。 需要强调的是,web service作为一种技术解决方案,关注的是业务,而不是事务。因为要在不同OS平台和不同语言的系统间实现事务的原子性比较困难(或者说很麻烦)。如果非要实现这样的功能,需要借助第三方的事务管理器。可以参见IBM文档库关于WS-Transaction的相关内容(这个是中文的,就是内容太少了点)。国内web service的典型用例是天气预报和网银。
SOA,Service Oriented Architecture,面向服务的体系结构。可以视为阐述web service的总体结构的一种概念。
在IBM的网站中,可以看到SOA和Service是放在一起做为一个主题介绍的。前文所述的ESB概念其实也是SOA概念图的成员之一(参考前文)。严格说来,SOA的层次比web service更高。关于SOA与web service的关系,有位仁兄在《SOA不是Web Service》里说得很好,“SOA不是Web Service,Web Service是目前最适合实现SOA的技术”。 “因为现在几乎所有的SOA应用场合都是和Web Service绑定的,所以不免有时候这两个概念混用。不可否认Web Service是现在最适合实现SOA的技术,SOA的走红在很大程度上归功于Web Service标准的成熟和应用普及。
因为现在大家基本上认同Web Service技术在几方面体现了SOA的需要:
首先是基于标准访问的独立功能实体满足了松耦合要求:在Web Service中所有的访问都通过SOAP访问进行,用WSDL定义的接口封装,通过UDDI进行目录查找,可以动态改变一个服务的提供方而无需影响客户端的配置,外界客户端是根本不关心访问服务器端的实现。
其次,适合大数据量低频率访问符合服务大颗粒度功能:基于性能和效率平衡的要求,SOA的服务提供的是大颗粒度的应用功能,而且跨系统边界的访问频率也不会象程序间函数调用那么频繁。通过使用WSDL和基于文本(Literal)的SOAP请求,可以实现能一次性接收处理大量数据。 最后,基于标准的文本消息传递为异构系统提供通讯机制:
Web Service所有的通讯是通过SOAP进行的,而SOAP是基于XML的,XML是结构化的文本消息。从最早的EDI开始,文本消息也许是异构系统间通讯最好的消息格式,适用于SOA强调的服务对异构后天宿主系统的透明性。 综合上述观点,Web Service不愧为当前SOA的最好选择。然而,就SOA思想本身而言,并不一定要局限于Web Service方式的实现。更应该看到的是SOA本身强调的是实现业务逻辑的敏捷性要求,是从业务应用角度对信息系统实现和应用的抽象。随着人们认识的提高,还会有新技术不断的发明出来,更好的来满足这个要求。就好像在核子裂变之后,人们又发现了威力更加强大的核子聚变。为了要有一个更高的角度来看待问题,SOA和Web Service还是不应该混为一谈。”
Web Service与ejb web service和ejb都是应用程序远程调用方案的一种,但两者有着本质的不同: 1、web service主要关注于解决异构的问题,包括平台,编程语言等,可以说其关注的是分布式服务开发,控制层高,粒度大;
而ejb可以看作是一个分布式编程平台,通过Container和Component的抽象,简化了应用的开发,发布和调用,可以说其关注的是分布式组件开发,粒度小。
2、web service可以说是业界的一个规范,是不同编程语言异构系统进行通信的标准。 而ejb只是属于J2EE规范中的一部分。
3、ejb底层用rmi-iiop协议进行通信,防火墙会阻止;web service是基于http协议进行通信,防火墙不会阻止。
发表评论
-
J2EE关于ApacheAxis2的Webservice消息
2011-09-19 20:18 1596到目前为止,web service ... -
Axis Web Service开发之旅 (十) --异步调用WebService
2011-09-19 19:52 2966http://blog.csdn.net/crazystone ... -
《精通JAVA核心技术》-21.6 web服务开发
2011-07-18 10:06 1218详细的描述了使用axis开发web服务。 -
联通接口.doc
2011-07-14 09:44 1157联通接口.doc -
联通接口
2011-07-14 09:34 1联通接口 -
传智播客-web service(8)-利用xfire开发WS应用
2011-07-03 11:45 1971xfire概述 xfire是下一代j ... -
传智播客-web service(7)-序列化与反序列化、文件上传与下载
2011-07-03 11:44 2567序列化与反序列化 WS中 ... -
传智播客-web service(6)-即时发布与定制发布、wsdl文档与java对象
2011-07-03 11:42 2093即时发布与定制发布 ... -
传智播客-web service(5)-利用axis开发WS应用
2011-07-03 11:41 1686Axis 1、再说soap。 前文 ... -
传智播客-web service(4)-利用jdk6开发WS应用
2011-07-03 11:40 2779java开发web service最简单 ... -
传智播客-web service(1)-B/S、C/S与远程调用
2011-07-03 11:38 2013web service是徐培成老师 ... -
传智播客-web service(2)-ESB、SOAP和WSDL
2011-07-03 11:36 1729ESBESB,Enterprise Service Bus ... -
Web服务搜索与执行引擎(七)——重温WSDL与SOAP
2011-06-29 14:50 1800接下来的几篇文章是让 ... -
调用天气预报Web Service客户端
2011-06-29 10:27 3558(结合JAVA的WebService支持.pdf进行理解) ... -
官方例子及相关文章
2011-06-28 17:26 1272http://www.stevencharlesrobinso ... -
Jaxb 通过bean与xml交互
2011-06-28 16:05 2020package test; import java.io.F ... -
使用 JAXB 框架定制 Web 服务行为
2011-06-28 15:38 1912http://www.ibm.com/developerwor ... -
webservice_张孝祥
2011-06-22 14:13 5webservice_张孝祥.rar -
常用Web Service汇总(天气预报、时刻表等)
2011-06-21 11:51 1331下面总结了一些常用的Web Service,是平时乱逛时收 ... -
webservice---HelloWorld
2010-11-18 15:42 1291服务器端: 1、下载附件中的HelloWorld.rar,在 ...
相关推荐
传智播客-EJB3-黎活明.ppt 与视频相配
传智播客EJB3.0教程里用到的用于部署EJB的XML文件。
《传智播客成都中心蔡世友JavaScript面向对象及ExtJS基础教程》2.79G 《2010传智播客struts2.1.8视频教程》1.09G 《EJB3.0视频教程》180M 《JDBC视频教程》664M 《jpa详解视频教程》165M 《spring2.5视频教程》365M ...
### 传智播客EJB 3.0教学PPT知识点总结 #### 一、EJB 3.0概述 - **定义**:EJB(Enterprise JavaBeans)是一种用于构建分布式业务应用程序的标准服务端组件模型。EJB 3.0是EJB标准的一个重大更新,简化了许多先前...
2、传智播客EJB3.0.ppt-->是以《传智播客EJB3.0.pptx》为源文件的简单复制与粘贴后的结果,其格式与源文件有些不同,更为简洁,但没有源文件美观。该文件office 97 - office 2003及以上版本都能打开。 下载资源后...
在`传智播客-EJB3-黎活明.ppt`中,你将了解到无状态会话bean、有状态会话bean、消息驱动bean的使用,以及实体bean的管理。 这四部分课程涵盖了Java Web开发的重要方面,从用户界面到业务逻辑再到数据持久化,构建了...
《传智播客_AJAX视频教程》1.27G 《传智播客_FTP视频教程》117M 《传智播客_hibernate视频教程》573M 《传智播客_俄罗斯方块游戏开发_视频教程》217M 《传智播客_赖家材struts入门》558M 《传智播客_贪吃蛇游戏...
这个"java web传智播客方立勋完全版ppt"可能是由知名教育机构传智播客的讲师方立勋制作的一套完整的Java Web教学资料。这份资料可能涵盖了从基础到高级的各个层次,旨在帮助学习者全面掌握Java Web开发技术。 在...
【ejb-jboss-web实例的workspace】是一个专用于开发和部署EJB(Enterprise JavaBeans)与Web应用程序的工作环境,基于JBoss应用服务器。这个工作空间集合了开发所需的各种组件、配置文件以及源代码,便于开发者进行...
JavaEE包括了诸如Servlet、JSP、EJB(Enterprise JavaBeans)、JMS(Java Message Service)等多种组件和服务,用于开发可扩展、高并发、安全的Web应用。 **JavaWeb** JavaWeb是Java技术在Web开发领域的应用,它...
"传智播客全套Java体系PPT"整合了从基础的J2SE(Java Standard Edition)到复杂的Java Web和Java EE(Enterprise Edition)的全面知识体系,旨在为学习者提供一条清晰的学习路径。 1. **J2SE基础知识**:Java的基础...
传智播客EJB3.0.ppt ,视频教程的ppt,讲得非常好
**JAVA WEB 传智播客 课件** Java Web 是Java技术在Web开发领域的应用,它涵盖了从服务器端编程到客户端交互的全方位技术。对于初学者来说,掌握Java Web技术是进入互联网开发的重要一步。传智播客是一家知名的IT...
传智播客2016年J2EE就业班视频是一套系统全面的教学资源,它不仅包含了J2EE的基础理论知识,还涉及到了实际项目的开发流程和技术实现细节。对于想要进入企业级应用开发领域的学习者来说,这套视频是非常宝贵的参考...
**EJB 3.0 实例教程入门精简版** Enterprise JavaBeans(EJB)是Java平台上的一个核心组件,用于...阅读《传智播客EJB3.0实例教程入门精简版.pdf》文档,你将深入了解到EJB 3.0的精髓,并能有效地应用于实际工作中。
**精通SOA:基于服务总线的Struts+EJB+Web Service整合应用开发** 在现代企业级软件开发中,Service-Oriented Architecture(SOA,面向服务架构)是一种广泛采用的设计理念,它强调通过独立、可重用的服务来构建...
根据提供的文件信息,我们可以推断出这是一套关于Java EE与Android开发的视频教程,由传智播客在广州于2012年3月28日录制。下面将对该视频教程涉及的关键知识点进行详细的总结与解析。 ### 一、Java EE概述 #### 1...