组件是Java EE应用的基本单元。Java EE 6提供的组件主要包括三类:客户端组件、Web组件和业务组件。
1.客户端组件
用户通过客户端组件与企业应用进行交互。Java EE客户端既可以是一个Web浏览器、一个Applet,也可以是一个应用程序
。
(1)Web浏览器。Web浏览器又称为瘦客户。它通常只进行简单的人机交互,不执行如查询数据库、业务逻辑计算等复杂操作。
(2)Applet。Applet是一个用Java语言编写的小程序,运行在浏览器上的虚拟机里,通过HTTP等协议和服务器进行通信。
(3)应用程序客户端。Java EE应用程序客户端运行在客户机上,它为用户处理任务提供了比标记语言丰富的接口。典型的Java EE应用程序客户端拥有通过Swing或AWT API建立的图形用户界面。应用程序客户端直接访问在服务器EJB容器内的EJB组件。当然,JavaEE客户应用程序也可以像Applet客户那样通过HTTP连接与服务器的Servlet通信。与Applet不同的是,应用程序客户端一般需要在客户机进行安装,而Applet是通过Web下载,无需专门安装。
2.Web组件
Web组件对客户提交的Web请求进行动态响应
。用户每次在浏览器上单击一个链接或图标,实际上是通过HTTP请求向服务器发出请求。Web容器负责将Web请求传递给Web组件。Web组件对这些请求进行处理后生成动态内容,再通过Web容器返回给客户端。
Java EE Web组件包括Servlet和JSF(JavaServer Faces)组件
。
Servlet是Web容器里的程序组件。Servlet实质上是动态处理HTTP请求和生成网页的Java类
。JSF组件是一种基于JSF框架的组件,它可以实现像桌面应用一样基于事件驱动Web应用。
3.业务组件
业务组件用来实现特定的业务逻辑操作,它们通常不直接与客户交互
。业务组件包含EJB组件和Entity组件两大类。
EJB组件用于实现特定的业务逻辑,而不是像Web组件一样对客户端请求生成动态页面
。EJB组件能够在容器的支持下完成诸如远程连接、消息驱动、分布式事务处理等复杂的业务逻辑,因此使用EJB组件编写的程序可大大降低开发难度,且具有良好的扩展性。Java EE支持两种类型的EJB组件:Session Bean(会话bean)和Message-Driven Bean(消息驱动bean)。
Entity组件主要用来完成应用数据的持久化操作
。
总结
- Java EE6 有3类组件 客户端组件 ,Web组件和业务组件