JavaEE规范基础知识

本人博客文章网址:https://www.peretang.com/basic-knowledge-of-javaee-standard/


JavaEE简介

JavaEE,Java平台企业版,其提供了一个用于开发Web应用和企业应用的标准平台/规范。

意味着,所有d的JavaEE服务器厂商提供的JavaEE 容器/服务器 必然 包含/支持 JavaEE所有规范的实现。使用标准JavaEE规范开发并搭配JavaEE 容器/服务器 可令开发人员专注于业务层面上,而不需要分心于依赖包包管理的问题。

重点:JavaEE≠JavaWeb,JavaWeb只是JavaEE规范中的一部分。

JavaEE规范包含了一整个企业应用所需要的所有模块。

其从架构上可以分为4部分。

    1.Web层

    2.业务层(Core)

    3.企业信息层(EIS)

    4.通用平台(Common)

JavaEE架构

Web层

提供Web交互,数据传输等方面的组件

1. 关注于为客户端生成各种格式内容的视图模块:JSP JSTL EL JSF

2. 关注于Web实时交互的模块:WebSocket Java API

3. 关注于提供Web服务的Java Web Service模块:JAX-WS JAX-RS

4. 关注于交互数据规范的模块:JSON-P JAXB

5. 关注于Web请求和响应的模块:Servlet

业务层(Core)

提供简化业务逻辑编写的组件

1. 关注于用于开发可移植,可重用,可伸缩的企业应用编程模型:EJB

2. 关注于用于开发简化的,轻量级的,容器管理的,基于POJO的编程模型:托管Beans(Managed Beans)

3. 关注于提供面向切面编程的模块:拦截器API(Interceptor)

4. 关注于提供事务管理的模块:JTA

5. 关注于优化并发编程的模块:JavaEE并发工具包(Concurrency Utilities for Java EE)

企业信息层(EIS)

提供与其他企业中间件或服务交互的组件

1. 关注于与数据库交互的模块:JDBC

2. 关注于Java持久化的模块:JPA

3. 关注于Java信息服务的模块:JMS

4. 关注于Mail服务的模块:JavaMail API

5. 关注于与遗留系统交互的模块:JCA

6.关注于执行批量任务的模块:Batch

通用平台(Common)

提供公用组件

1. 关注于上下文与依赖注入的模块:CDI

2. 关注于整合安全的模块:JACC JASP JAAS

3. 关注于JavaEE平台规范注解的模块:JavaEE通用注解(JavaEE common Annotation)

4. 关注于数据校验的模块:Bean验证API(Bean Validation)

5. 关注于JavaEE管理的模块:JavaEE管理API(JavaEE Management API)

6. 关注于提供查找组件,资源或服务的间接层模块:JNDI

JavaEE架构图

 

参考:

Java EE 7 Essentials

The Java EE Tutorial

JAVAEE规范基础知识的更多相关文章

  1. JavaEE XML 基础知识

    JavaEE XML 基础知识 @author ixenos 1.    XML开头都需要一个声明 <?和?>表明这是一个处理指令 <?xml version=”1.0” encod ...

  2. Spring框架基础知识

    本人博客文章网址:https://www.peretang.com/basic-knowledge-of-spring-framework/ Spring框架简介 Spring , 一个开源的框架 , ...

  3. [Java面试三]JavaWeb基础知识总结.

    1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Internet上供外界访问的Web资源分为: • 静 ...

  4. Java基础知识总结(超级经典)

    Java基础知识总结(超级经典) 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的java ...

  5. 毕向东—Java基础知识总结(超级经典)

    Java基础知识总结(超级经典) 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的java ...

  6. JavaWeb基础知识总结

    JavaWeb基础知识总结.   1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Internet上供 ...

  7. JAVA学习基础知识总结(原创)

    (未经博主允许,禁止转载!) 一.基础知识:1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. java语言是跨平 ...

  8. Servlet学习笔记【1】--- 背景和基础知识(CGI、Web服务器发展史、Servlet简介、任务、继承结构)

    本文主要讲Servlet的基础知识和背景知识. 1 CGI简介 CGI(Common Gateway Interface 公共网关接口)是WWW技术中最重要的技术之一,有着不可替代的重要地位.CGI是 ...

  9. java基础知识一

    1.计算机基础知识概述 (1) 计算机 计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能.是能够按照程序运行,自动.高速处 ...

随机推荐

  1. 通讯录--(适配iOS7/8/9)

    导入库#import <AddressBook/AddressBook.h> #import <AddressBookUI/AddressBookUI.h> #pragma m ...

  2. 队列工厂之RabbitMQ

    本次和大家分享的是RabbitMQ队列的用法,前一篇文章队列工厂之(MSMQ)中在描述的时候已经搭建了简单工厂,因此本章内容是在其之上扩充的子项不再过多讲解工厂的代码了:RabbitMQ应该是现在互联 ...

  3. Python round() 函数

    round() 方法返回浮点数x的四舍五入值. 以下是 round() 方法的语法: round( x [, n] )x为浮点数,n为保留的小数点位. 以下展示了使用 round() 方法的实例: p ...

  4. WPF: 在 MVVM 设计中实现对 ListViewItem 双击事件的响应

    ListView 控件最常用的事件是 SelectionChanged:如果采用 MVVM 模式来设计 WPF 应用,通常,我们可以使用行为(如 InvokeCommandAction)并结合命令来实 ...

  5. Codeforces Gym 100269E Energy Tycoon 贪心

    题目链接:http://codeforces.com/gym/100269/attachments 题意: 有长度为n个格子,你有两种操作,1是放一个长度为1的东西上去,2是放一个长度为2的东西上去 ...

  6. Linux MTD子系统 _从模型分析到Flash驱动模板

    MTD(Memory Technology Device)即常说的Flash等使用存储芯片的存储设备,MTD子系统对应的是块设备驱动框架中的设备驱动层,可以说,MTD就是针对Flash设备设计的标准化 ...

  7. [TPYBoard - Micropython 之会python就能做硬件 9] 五分种学会用TPYBoard V102 制作避障小车(升级版)

    转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 感谢山东萝卜电子科技公司授权   一.实验器材 1.TPYboard V102板 ...

  8. 任务调度之集群(基于Quartz.net)

    上一篇我们完成了任务调度的持久化,传送门:任务调度之持久化(基于Quartz.net) 这篇我们来完成Quartz.net的一个比较优秀的功能,即集群:集群可以提高任务调度服务的容灾性, 当一个节点宕 ...

  9. Modbus通信协议详解

    附:http://www.360doc.com/content/14/0214/13/15800361_352436989.shtml 一.Modbus 协议简介 Modbus 协议是应用于电子控制器 ...

  10. loadrunner提高篇-插入检查点与关联函数

    插入检查点   靠LR自动生成的脚本是不够的,很难达到业务要求,因此需要对录制完的脚本进行完善,使其能达到业务模拟的要求 ,这样尽可能地使虚拟用户模拟时更接近用户的实际使用. 在进行压力测试时,经常会 ...