03 JavaEE体系概况
前面我们学习了Http协议和网络的一些基础知识,可以说前面的内容都是作为JavaEE的基础知识,也可以理解为我们接下来要学习的知识的铺垫。从本小节开始,我们就正式开始学习JavaEE核心技术的相关知识。
JavaEE体系结构
曾经Java分为三个大的平台:
- JavaSE = J2SE
- JavaEE = J2EE
- J2ME
其中的J2ME已经没落,因为被Android平台打得体无完肤,基本上已经退出历史舞台。而现在我们更多的关注点,都在J2SE和J2EE上面。J2SE包含了基础的API调用和Java的语法,J2EE平台则定义了一整套企业级开发的标准和体系结构,归纳起来分为以下13种,简单介绍一下:
JDBC(Java Database Connectivity) 数据库连接
- 上层对接系统应用
- 下层对接各个厂商的数据库
- 定义一系列标准接口,厂商根据接口定义数据库连接方案,上层应用调用接口就可以直接访问数据库。
JNDI(Java Naming and Directory Interfaces) Java的命名和目录接口
- 生成一套标准的目录命名的标准。
- 通常被用于数据源的定义。
EJB(Enterprise JavaBean)
- 为大型分布式企业级应用(多终端、多应用、多场景)而生,曾经EJB以其晦涩难懂及其陡峭的学习曲线闻名于世。
- 随着技术的发展,EJB慢慢被一些民间机构打败,比如Spring。
RMI(Remote Method Invoke) 远程方法调用
- 同样为大型分布式企业级应用而生,主要作用是可以让A电脑虚拟机去访问B电脑虚拟机上的方法或者接口。
- 如今看来它就是属于一种网络交互,只不过包装在这个RMI的标准下。
Java IDL 接口定义语言/公用对象请求代理程序体系结构
- 为多应用(多应用可以不单是Java体系范围内的,可能是C或者其他语言编写的)提供支撑,IDL让多种语言进行互通的标准的接口。
- JSP(Java Server Pages)
- Servlet
- 这两者提供了B/S上基于Http协议的Web解决方案,是J2EE的核心部分。
- XML(Extensible Markup Language) 可扩展标记语言
- 本身并不属于J2EE体系,但是J2EE体系里有处理XML文档的能力。
- JMS(Java Message Service) Java消息服务
- 多个Java应用可以通过JMS进行信息交换。
- JTA(Java Transaction API) Java事务API
- JTS(Java Transaction Service) Java事务服务
- JTA和JTS 配合JDBC使用提供了对于数据库的事务管理。
- JavaMail
- JAF(JavaBean Activation Framwork)
- JavaMail和JAF提供了关于邮件的处理方案,与前面的部分关系不大。
JavaEE发展
- 由JSP、Servlet、XML引申而来的MVC体系。
- SpringMVC、Strust
- 由JDBC、JPA、JTS、JTA引申而来的ORM体系。
- Mybatis、Hibernate
了解了前三章的基础知识之后,接下来我们将开始动手来写Servlet。