Java EE规范笔记

Java EE平台是一个实现了Java EE应用程序标准的宿主平台。
J2EE技术框架可以分为3部分:组件技术、服务技术和通信技术。

一、应用组件
1.Java EE必须支持的四种应用组件类型:
    a. 应用客户端组件,通常是在桌面计算机上执行的 GUI 程序。
    b. Applet组件
    c. Servlet,JSP 页面
    d. EJB 组件
2.Java EE产品通常都为每种应用组件类型提供一个容器:应用客户端容器,applet 容器,web 容器和企业 bean 容器。
3.容器为Java EE应用程序组件提供了运行时支持。Java EE容器的底层是它所属的服务器,Java EE服务器为符合标准的应用程序组件提供部署,管理和运行的支持。
二、标准服务
1.HTTP
2.HTTPS
3.Java Transaction API(JTA)
它包括事务管理器(Transaction Manager)和一个或多个支持 XA 协议的资源管理器( Resource Manager )两部分,我们可以将资源管理器看做任意类型的持久化数据存储;事务管理器则承担着所有事务参与单元的协调与控制。 
4.RMI-IIOP
Java EE应用可以使用RMI‐IIOP(支持 IIOP)来访问兼容RMI编程限制的CORBA服务.
5.Java IDL
可以让Java EE应用组件调用外部的使用IIOP协议的CORBA对象。
6.JDBC API
JDBC API 是与关系数据库系统进行连接的 API。
7.Jav Persistence API
Java 持久化 API 是持久化管理和 O/R 映射的标准 API。
8.Java 消息服务(JMS)
9.Java 命名和目录接口(JNDI)
JNDI API有两个部分:由访问命名和目录服务的应用组件使用者接口和目录服务提供者接口组成。
10.JavaMail
11.JavaBean Activation Framework(JavaBean活动框架,JAF)
JAF是一个专用的数据处理框架,它用于封装数据,并为应用程序提供访问和操作数据的接口。JAF的主要作用是让java应用程序知道如何对一个数据源进行查看、编辑和打印等操作。
JAF API为处理不同MIME类型、来自不同的格式和位置的数据提供了一个框架。
12.java XML Processing(JAXP,java XML处理)
1)JAXP提供了对用于解析XML文档的StAX,SAX和DOM API的支持,也支持XSLT转换引擎。
2)JAXP, JAXB, SAX, StAX, DOM等名词解释
SAX(Simple API for XML)和DOM(Document Object Model)最先出来的两种解析器。
DOM的特点是,把整个XML内容读取内存中进行处理,是一种tree-based API。
优点:可以随机进行对某个节点内容进行读取和写入。缺点:耗费内存,性能差。
SAX不是一次把所有XML内容读取进来,而是进行一行一行的读取。每读取一行,就处发事件,处理这行的内容,是event-based API。
优点:处理速度快,节省内存。缺点:不能再次读取已经读过的内容,而且只能进行读,不能进行写。
适用于只扫描一次XML内容,就能提取想要的数据的场合。
StAX(Streaming API for XML):StAX解析器是最后出来的解析器,被认为比前两种都好,也是event-based API。
StAX既可进行读,也可以进行写。
优点:处理速度快,节省内存,可进行读写。缺点:不能再次读取已经读过的内容。
适用于只扫描一次XML内容,就能提取想要的数据的场合。
JAXB:JAXB是Java Architecture for XML Binding的缩写。可以将一个Java对象转变成为XML,或把XML转换成Java对象。。
JAXP是JAXB读取过程中的一部分,JAXB默认的XML解析器就是StAX。
可扩展样式表转换语言(Extensible Stylesheet Language Transformations,XSLT)是一种样式转换标记语言,可以将XML数据档转换为另外的XML或其它格式,如HTML网页,纯文字。
13.JCA(J2EE 连接器架构,Java Connector Architecture)
JCA的目标在于企业应用程序集成方面,它提供的标准化体系结构让J2EE组件能够对异构EIS进行“即插即用”的访问,其中包括ERP、事务处理、老式数据库系统等。
14.Security Services
Java认证和授权服务(Java Authentication and Authorization Service,简称JAAS),允许服务验证并强制对用户进行访问控制。JAAS实现了Java技术版本的标准可插拔验证模块(PAM)框架。
Java容器授权协议(Java Authorization Contract for Containers,简称JACC),JACC使用JAAS API,可将基于Java权限的安全模型扩展到EJB和Servlet。
Java容器认证服务提供者接口(Java Authentication Service Provider Interface for Containers,JASPIC)提供了更易于使用的SPI,用于验证Web应用程序的用户并定义身份存储API用于身份验证和授权。
15.Websevice
J2ee包括三种WebService 规范,分别是JAXM&SAAJ、JAX-WS(JAX-RPC)、JAX-RS。
1)JAX-WS(Java API For XML-WebService):
JAX-WS,其底层支持为JAXB。JAX-WS和JAX-RPC都使用SOAP/HTTP协议。JAX-RPC目前已经被JAX-WS规范取代。
JAX-WS(JSR 224)规范的API 位于javax.xml.ws.*包。
WS-MetaData(JSR 181)是JAX-WS 的依赖规范,其API 位于javax.jws.*包,使用注解配置公开的Web 服务的相关信息和配置SOAP消息的相关信息。
2)JAXM&SAAJ:
JAXM(JAVA API For XML Message)主要定义了包含了发送和接收消息所需的API,相当
于Web服务的服务器端,其API位于javax.messaging.*包,它是JAVA EE的可选包,因此
你需要单独下载。
SAAJ(SOAP With Attachment API For Java)是与JAXM 搭配使用的API,为构建
SOAP包和解析SOAP包提供了重要的支持,支持附件传输,它在服务器端、客户端都需要
使用。这里还要提到的是SAAJ规范,其API位于javax.xml.soap.*包。
JAXM&SAAJ与JAX-WS都是基于SOAP的Web服务,相比之下JAXM&SAAJ暴漏了SOAP
更多的底层细节,编码比较麻烦,而JAX-WS更加抽象,隐藏了更多的细节,更加面向对
象,实现起来你基本上不需要关心SOAP的任何细节。那么如果你想控制SOAP消息的更
多细节,可以使用JAXM&SAAJ。
3)JAX-RS:
JAX-RS是JAVA针对REST(Representation State Transfer)风格制定的一套Web 服务规范,
其API位于javax.ws.rs.*包。
16.SPI
1)SPI全称为Service Provider Interface,是JDK内置的一种服务提供发现机制。
Java提供了很多服务提供者接口(Service Provider Interface,SPI),允许第三方为这些接口提供实现。
常见的SPI有JDBC、JCE、JNDI、JAXP和JBI等。
2)Java SPI,需要遵循如下约定:
    1、当服务提供者提供了接口的一种具体实现后,在jar包的META-INF/services目录下创建一个以“接口全限定名”为命名的文件,内容为实现类的全限定名;
    2、接口实现类所在的jar包放在主程序的classpath中;
    3、主程序通过java.util.ServiceLoder动态装载实现模块,它通过扫描META-INF/services目录下的配置文件找到实现类的全限定名,把类加载到JVM;
    4、SPI的实现类必须携带一个不带参数的构造方法;
17.其他
JAXR(Java API for XML Registries)提供了与多种类型注册服务进行交互的API。JAXR运行客户端访问与JAXR规范相兼容的Web Servcices,这里的Web Services即为注册服务。
JSF(JavaServer Faces)它是一个基于服务器端组件的用户界面框架。 它用于开发Web应用程序。 它提供了一个定义良好的编程模型,由丰富的API和标签库组成。
CDI&DI(Context and Dependency Injection) 注入标准。
JCE(Java Cryptography Extension) 是一组包,它们提供用于加密、密钥生成和协商等算法的框架和实现。
JSONB JSON绑定API,用于在JSON文本和Java对象之间进行映射
JSONP JSON处理API
Batch
Bean Validation
Concurrency Utilities
Management
Connectors

三、13个规范
1、JDBC:(Java Data Base Connectivity,java数据库连接)
2、JNDI:(Java Naming and Directory Interface,Java命名和目录接口)
3、EJB:(Enterprise Java Beans,企业级Java Beans)
4、RMI:(Remote Method Invocation,远程方法调用)
5、Java IDL/CORBA:(Java Interface Definiyion Language/Common Object Request  Broker Architecture ,Java接口定义语言/公用对象请求代理程序体系结构)
6、JSP:(Java Server Pages,Java服务器页面)
7、Servlets:(Server Applet,全称Java Servlet)
8、XML:(Extensible Markup Language,可扩展标记语言)
9、JMS:(Java Message Service,Java消息服务)
10、JTA:(Java Transaction API,Java事务API)
11、JTS:(Java Transaction Service,Java事务服务)
12、JavaMail
13、JAF:(JavaBeans Activation Framework,JavaBeans活动框架)

### 回答1: Java EE (Enterprise Edition) 是一个用于企业级应用开发的平台。它是基于 Java SE (Standard Edition) 平台的扩展,提供了许多用于开发大型分布式应用的功能和技术。 以下是 Java EE 的核心笔记: 1. 基于 Servlet 和 JSP 的 Web 应用开发:Java EE 提供了基于 Servlet 和 JSP 技术的 Web 应用开发框架,用于构建动态 Web 应用。 2. 基于 EJB 的分布式应用开发:Java EE 提供了基于 Enterprise Java Beans (EJB) 技术的分布式应用开发框架,用于构建高可用性和高性能的分布式应用。 3. 数据访问:Java EE 提供了 JDBC、JPA 和 JTA 等技术,用于管理和访问数据。 4. 消息驱动:Java EE 提供了 JMS 技术,用于支持消息驱动的应用开发。 5. Web Services:Java EE 提供了 JAX-WS 和 JAX-RS 等技术,用于支持 Web Services 的开发。 这些是 Java EE 的核心组件,它们为企业级应用开发提供了强大的技术支持。 ### 回答2: Java EEJava Platform, Enterprise Edition)是一个基于Java语言的企业级应用程序开发平台。它提供了一系列的API和工具,用于快速开发、部署和管理企业级应用程序。 Java EE建立在Java SE(Java Platform, Standard Edition)的基础上,为企业级应用开发提供了更强大的功能和工具。它包括了许多子技术,如Java Servlet、JavaServer Pages(JSP)、JavaServer Faces(JSF)、Java Persistence API(JPA)等,用于处理不同的任务和需求。 Java EE的核心是分层架构和组件化开发。分层架构将应用程序划分为不同的层次,包括表示层、业务逻辑层和数据访问层,每一层都有特定的职责和功能。组件化开发则将应用程序划分为一系列的可重用组件,每个组件都有独立的功能和接口。 Java EE还提供了丰富的服务和工具,用于开发和管理企业级应用。例如,它提供了连接池、事务管理、安全性、远程调用等服务,以满足不同应用的需求。它还提供了各种工具,如Eclipse、NetBeans等集成开发环境和应用服务器,用于开发、测试和部署应用程序。 Java EE的优势在于它的跨平台性和可扩展性。由于Java的特性和虚拟机的存在,Java EE应用程序可以在不同的操作系统和硬件上运行,而不需要对代码进行修改。同时,Java EE也提供了强大的扩展机制,允许开发人员根据不同的需求进行定制和扩展。 总而言之,Java EE是一个功能强大的企业级应用开发平台,它提供了丰富的API和工具,支持分层架构和组件化开发,具有跨平台性和可扩展性的优势。通过使用Java EE,开发人员可以更高效地开发、部署和管理企业级应用程序。 ### 回答3: Java EEJava Enterprise Edition,即Java 企业版)是一套用于开发企业级应用程序的Java平台规范,它提供了可靠、可扩展、安全、跨平台的应用开发解决方案。 Java EE 核心笔记主要包含以下内容: 1. 基础概念和架构:Java EE是建立在Java SE(标准版)之上的,它包含了一系列的API、规范技术,如Servlet、JSP、EJB、CDI等。它的架构分为客户端和服务器端,通过各种组件实现了业务逻辑的分层和分工。 2. Servlet和JSP:Servlet是用于处理HTTP请求和响应的Java程序,它可以动态生成HTML页面;JSP是一种用于编写动态网页的技术,它可以将Java代码嵌入到HTML页面中。Servlet和JSP是Java EE最基础、最常用的组件。 3. EJB(Enterprise JavaBeans):EJB是用于构建底层业务逻辑和访问数据库的组件,它提供了事务管理、连接池、安全性等企业级特性,使得开发者能够更加专注于业务逻辑,而不必关心底层的技术实现细节。 4. CDI(Contexts and Dependency Injection):CDI是一种依赖注入的技术,在Java EE中用于管理组件之间的依赖关系,实现松耦合的开发。通过CDI,开发者可以将各个组件解耦,提高代码的可维护性和可测试性。 5. 安全性和认证:Java EE提供了一套完整的安全和认证机制。开发者可以通过配置验证和授权策略,来保护企业级应用的安全性,确保只有经过身份认证的用户才能访问敏感的资源。 Java EE企业级应用开发需要具备扎实的Java编程基础和对企业级应用开发的理解,同时还需要熟悉Java EE的各个组件和规范。掌握了这些核心知识,开发者可以借助Java EE提供的强大能力,快速、高效地开发出安全、可靠的企业级应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值