【JAVA EE】体系总结

  • 写在前面的
  • 整体概览图
    • JAVAEE 组件
  • JAVA EE客户端
    • WEB客户端
    • 应用客户端
    • applet
    • JAVABeans组件架构
    • Java EE 服务器通讯
  • JAVA EE WEB组件
  • 业务组件
  • 企业信息系统层EIS
  • 总结

写在前面的

   在刚接触JAVA EE 的时候,并不是很清楚EE和SE的区别,但是随着与EE相处的日子慢慢多起来,就觉得之前自己脑子里想的这个问题简直可笑。SE只是语法规范,EE是企业级的一些应用与解决方案,二者完全不在一个基调上。那么对于EE的一些基本概念和知识自己在回顾的时候觉得还是有必要总结一下的,毕竟与.NET是截然不同的思想(当然某些架构内部的思想也是如出一辙,只是实现方法不同罢了)

整体概览图

  • 【JAVA EE】体系总结_第1张图片

JAVAEE 组件

  • 应用客户端和applet是运行在客户端的组件。

  • Java Servlet、JavaServer Faces和JavaServer Page(也就是JSP)技术组件是运行在服务器上的web组件。

  • EJB(Enterprise Java Bean)是运行在服务器上的业务组件。

JAVA EE客户端

  • 如图所示,JAVAEE的客户端一般分为web客户端应用客户端

WEB客户端

  • JAVAEE 的WEB客户端包含两类,一类是:包含不同类型标记语言的动态Web页面,由运行在Web层的Web组件生成。

  • 另一类是Web浏览器,显示从服务器接收的页面。

  • 注:由于JAVAEE本身的思想体现,基本上我们所做的JAVA项目,WEB客户端都是”瘦客户端(thin client),因为在使用了web客户端之后,查询数据库、执行复杂的业务逻辑或连接遗留应用等这些个复杂的操作都会迁移到JAVA EE 的服务器上执行的EJB,从而能够充分利用JAVA EE 服务器端技术在安全性、速度、可靠性等方面的优势。

应用客户端

  • 当WEB客户端没有办法满足更加丰富的用户界面的时候,就需要一个应用客户端来作为补充了。(因为web客户端本身的局限性,某些标记语言无法实现操作更为复杂的用户界面,或者实现这种界面需要消耗大量时间)

applet

  • 同时,JAVA的web页面也可以嵌入applet。对于applet来讲,它是一种JAVA编写的小客户端应用,不过有时候为了让applet能在web浏览器中成功执行,就需要在客户端的环境中配置JAVA相关的插件,这就是有时候我们在运行一些带有applet的程序的时候会提示下载JAVA插件。显然,这种相对于简单的WEB页面而言,是非常不可取的,但是凡事都有利弊,主要就是看项目需求了。

JAVABeans组件架构

  • 好了,讲到这里,我们就要逐渐的往服务器上靠拢了。服务器和客户端层也可以包含基于JavaBeans的组件,来管理:

    • 应用客户端或applet与JavaEE服务器上运行的组件之间的数据流

    • 服务器组件与数据库之间的数据流

  • 注:根据Java EE的规范,Java Beans并不被认为是JavaEE的组件。(小心面试官的陷阱哦~)

Java EE 服务器通讯

  • 这里需要补充一下文章一开始的JAVAEE通讯架构图。客户端是可以直接与运行在Java EE服务器上的业务进行通信,如果客户端在浏览器中运行,就需要通过WEB层中运行的Web页面或者servlet进行通信。结构图如下:

  • 【JAVA EE】体系总结_第2张图片

JAVA EE WEB组件

  • JAVA EE 的WEB组件可以是多样化的,既可以是servlet,或者事由JSF和JSP创建的WEB页面。前者是JAVA编写的工具类,他会动态的处理请求和构造响应。JSP页面是基于文本的文档,可以作为servlet执行,也可以创建静态内容。JSF(JavaServer Faces)则是建立在Servlet和JSP的技术之上,为Web应用提供一个用户界面组件框架。

业务组件

  • 业务层就不必再多说了,业务代码就是解决一些列和需求有关的实际业务领域的一些事务,以及完善相关业务逻辑以及事务处理。

  • 我们来用一张图展示一下EJB如何接收来自客户端程序的数据,然后进行处理(也可以不进行数据处理),并将其发送到企业信息系层进行存储,同时向客户端发送数据。(看到这里,其实和绝大多数的项目逻辑是一样的,其实也揭示了80%的项目实现,如果出现不同,或者优化上的区别,也就是在这里进行体现。)我们来继续完善一下这个图:

【JAVA EE】体系总结_第3张图片

企业信息系统层(EIS)

  • EIS包含了企业基础设施系统,如企业资源计划(Enterprise Resource Planning,ERP)、主机事务处理、数据库系统,以及其他的遗留系统。

总结

  • 通过将JAVAEE的基础组件和设计思想像做清单一样详细的列出来,那么就会对我们理解和掌握JAVAEE起到了非常积极的作用。总之,在庞大的JAVA世界中,除了EE的这种思想,更多的还有大咖们天马行空的解决方案。不得不说,JAVA的世界还有更多需要我们一起探索。

你可能感兴趣的:(【JAVA EE】体系总结)