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. github 删除远程仓库项目中的任意文件夹

    今天上传代码把不需要的push上去了.结果想删除那个不想要的怎么弄都不行.网上大部分都是把那个项目整个暴力删除.那可不行啊那么多都删除.下次上传不是要命啊! 试啊试终于解决了.顺便记录一下也帮助下需要 ...

  2. sonarqube代码检测

    1.安装java环境 略 2.下载sonarqube包 sonarqube与sonar-runner的下载地址:http://www.sonarqube.org/downloads/ 将下载好的软件包 ...

  3. 本机安装mysql服务,步骤教程(另附SQLyog和Navicat工具)

    因为这段时间不是装系统就是换硬盘,导致装了还几次MySql,每次都记不住都要上网找教程,着实麻烦,所以这次干脆直接写到博客上好了,便于自己也便于他人: 百度云:http://pan.baidu.com ...

  4. 算法模板——计算几何2(二维凸包——Andrew算法)

    实现功能:求出二维平面内一对散点的凸包(详见Codevs 1298) 很神奇的算法——先将各个点按坐标排序,然后像我们所知的那样一路左转,求出半边的凸包,然后反过来求另一半的凸包 我以前正是因为总抱着 ...

  5. CoreAnimation 寄宿图

    #CoreAnimation 寄宿图 寄宿图:图层中所包含的图 by:旭宝爱吃鱼 针对于寄宿图我在这里只讨论contents属性以及Custom Drawing. contents content:内 ...

  6. tp框架之对列表的一系列操作及跳转页面(详细步骤)

    依旧是在Main控制器里面写类方法,如果想看tp全部的话,可以从前几篇开始看,都是一整个步骤下来的 在控制器中重新写个类 然后再做个shouye.html页面 nation表的数据,将会在shou.h ...

  7. scanf函数之扫描集

    前言 %[]是scanf函数不常用到的格式字符--扫描集(scanset),它的用法很简单,但却能巧妙地解决一些输入问题.(由于书籍里和网上对此格式字符的介绍很少且篇幅较小,本文可能会有些许错误,请读 ...

  8. X64系统下IIS运行ASP网站HTTP500错误 【安装FoxMail Server时出现】

    错误如上 解决办法 使用管理员模式运行CMD 输入cscript C:\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitA ...

  9. linux之date命令详解

    date命令的用处 1.用于显示特殊的时间格式,可以用于对日志文件的命名 2.用于设置时间 ,不过这方面用的比较少,因为一般的服务器都设置的有自动同步网络时间 用法: date [OPTION]... ...

  10. require include php5中最新区别,百度上好多错的。

    二者报错机制不同,include是warning 继续执行程序,require会报致命错误,中断程序运行. 前者有返回值,后者则没有. 注意了,php5里有一个区别没了,之前说的是require是无条 ...