WebService

  Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。

  Web服务有两层含义:

  1、是指封装成单个实体并发布到网络上的功能集合体;

  2、是指功能集合体被调用后所提供的服务。

  简单地讲,Web服务是一个URL资源,客户端可以通过编程方式请求得到它的服务,而不需要知道所请求的服务是怎样实现的,这一点与传统的分布式组件对象模型不同。如下为WebService的体系结构:

                                  

  实现一个完整的Web服务包括以下步骤:

  1.Web服务提供者设计实现Web服务,并将调试正确后的Web服务通过Web服务中介者发布,并在UDDI注册中心注册; (发布)

  2.Web服务请求者向Web服务中介者请求特定的服务,中介者根据请求查询UDDI注册中心,为请求者寻找满足请求的服务; (发现)

  3.Web服务中介者向Web服务请求者返回满足条件的Web服务描述信息,该描述信息用WSDL写成,各种支持Web服务的机器都能阅读;(发现)

  4.利用从Web服务中介者返回的描述信息生成相应的SOAP消息,发送给Web服务提供者,以实现Web服务的调用;(绑定)

  5.Web服务提供者按SOAP消息执行相应的Web服务,并将服务结果返回给Web服务请求者。(绑定)

EJB

  EJB是sun的JavaEE服务器端组件模型,设计目标与核心应用是部署分布式应用程序。简单来说就是把已经编写好的程序(即:类)打包放在服务器上执行。凭借java跨平台的优势,用EJB技术部署的分布式系统可以不限于特定的平台。EJB (Enterprise JavaBean)是J2EE的一部分,定义了一个用于开发基于组件的企业多重应用程序的标准。其特点包括网络服务支持和核心开发工具(SDK)。 在J2EE里,Enterprise Java Beans(EJB)称为Java 企业Bean,是Java的核心代码,分别是会话Bean(Session Bean),实体Bean(Entity Bean)和消息驱动Bean(MessageDriven Bean)。

  1.SessionBean用于实现业务逻辑,它可以是有状态的,也可以是无状态的。每当客户端请求时,容器就会选择一个SessionBean来为客户端服务。Session Bean可以直接访问数据库,但更多时候,它会通过Entity Bean实现数据访问。

  2.Entity Bean是域模型对象,用于实现O/R映射,负责将数据库中的表记录映射为内存中的Entity对象,事实上,创建一个Entity Bean对象相当于新建一条记录,删除一个Entity Bean会同时从数据库中删除对应记录,修改一个Entity Bean时,容器会自动将Entity Bean的状态和数据库同步。
 
  3.MessageDriven Bean是EJB2.0中引入的新的企业Bean,它基于JMS消息,只能接收客户端发送的JMS消息然后处理。MDB实际上是一个异步的无状态SessionBean,客户端调用MDB后无需等待,立刻返回,MDB将异步处理客户请求。这适合于需要异步处理请求的场合,比如订单处理,这样就能避免客户端长时间的等待一个方法调用直到返回结果。

  

最新文章

  1. 关于SQL Server镜像的一个小误区
  2. Objective-C快速上手
  3. Java知识积累2-StringReverse实现文字(单词)倒叙输出
  4. 嵌入式开发平台-iTOP-4418开发板
  5. WPF控件ComboBox 每个Item的ToolTip引发的异常
  6. HDU4511 小明系列故事——女友的考验(AC自动机 + DP)
  7. [转]ZigBee On Windows Mobile--ZigBee模块天线设计
  8. esp8266烧写机智云固件方法
  9. 一个基于nodejs,支持http/https的中间人(MITM)代理,便于渗透测试和开发调试。
  10. maven的安装配置以及在IDEA中配置
  11. 拯救老旧工程,记桥接SpringMVC与Stripes框架
  12. SpringCloud(5)路由网关Spring Cloud Zuul
  13. grid-layout
  14. js如何在浏览器添加cookie(添加、获取、删除)
  15. ASP.NET MVC下使用AngularJs语言(一):Hello your name
  16. Linux命令学习之路——档案拷贝:cp
  17. redis下载地址
  18. 关于输出螺旋矩阵的demo
  19. 升级pip后出现 ImportError: cannot import name main
  20. Echarts的option中的data问题

热门文章

  1. Linux grep命令详解[备份]
  2. PL/SQL DEVELOPER数字超长显示了科学计数法
  3. php输出大段代码(含变量和方法)
  4. Linux 系统计算文件夹下文件数量数目
  5. MongoDB运行状态、性能监控,分析
  6. 【树】Sum Root to Leaf Numbers
  7. Android_PullListView
  8. 数据库报错com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'ua' at row 1
  9. 自然语言处理--TF-IDF(关键词提取)
  10. 数据序列化导读(2)[YAML]