版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/akkzhjj/article/details/27973427

J2EE—一套规范

  J2EE(Java 2Platform Enterprise Edition),顾名思义,Java2平台企业版,是一个开放的、基于标准的开发和部署的平台。

        可是首先要知道的是这个所说的平台不是语言。不是软件。也不是服务,它仅仅是由几大业界巨头共同制定的规范和标准,以用于构建N层的、基于Web的、以server为核心的模块化的企业应用。

        总之,J2EE就是一套规范。而规范的目的在于统一,就比如螺丝和螺母。肯定要有一个行业标准规范,不然每家生产的螺丝和螺母都不一样,我丢了螺母还要去原来的那家去买,他倒闭了。非常难找到配套的。J2EE规范的详细实施提高了系统的可移植性、安全性、可伸缩性、负载均衡和可重用性。


体系结构

    通过J2EE体系结构,重点来看J2EE的13个规范:

   

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWtremhqag==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

  典型的三层架构:

  表示层:学过三层的就非常easy理解了,表示层和client交流,给客户提供需求的。

  业务逻辑层:处理逻辑,和后台数据库打交道。

  协议:解决业务逻辑层和表示层的业务,数据库的訪问,事务,邮件。以及消息等等。

‘全明星队伍’

  1. JDBC(Java Database Connectivity)

  从VB到.NET学过来的,肯定知道ODBC,刚接触数据库时学的那五个样例就使用的ODBC数据源连接的数据库,然后到后面的VB系统以及.NET系统中使用的ADO訪问数据库。JDBC也是一样的东西。仅仅只是是基于Java的。JDBC仅仅提供一种标准。

  1. JNDI(Java Name and Directory Interface)

  Java命名和文件夹接口。怎么理解呢,简单的理解就是JNDI是通过一个命名和文件夹获得系统外部的资源,这个资源能够是JDBC数据源、资源实体以及EJB引用。

  JNDI能够形象成一棵树。外部能够给它挂各种各样的东西。我们要取就从树上取,也就是分层的思想啊,更进一步就是实现分布式的方法。

  1. EJB(Enterprise Java Beans)

  Java 企业Bean,EJB听过非常多次了。通过查询有一些自己的了解吧,Bean本身就是Java类。是类就easy理解,JavaBean将功能、处理、值、数据库訪问等等通过对象进行打包,通过get和set进行赋值和取值。不仅如此。一次打包能够在不论什么地方运行。按这样说实体就是一种Bean。

  1. RMI(Remote Method Invoke)

   RMI远程方法调用,用于client和服务端数据传递的,是EJB的基础,增强的Java分布式开发的能力。

  1. Java IDL/CORBA

   JavaIDL使分布式、支持Web的Java应用能够基于IIOP协议透明地调用远程服务。不甚了解。

  1. JSP(Java Server Pages)

   JSP。立即反应ASP,ASP.NET是HTML+C#,JSP是HTML+JAVA,不同的也就是由于JAVA,JSP是跨平台的。

  1. Java Servlet

  Servlet一种小的Java程序,扩展了Webserver的功能。

  学习AJAX时,在NetBeans中接触到过,可是不知道为什么会用。后来在做评教系统是用了非常多AJAX,然后通过异步传输在一般处理程序中进行处理。对照一般处理程序和Servlet的方法名和里面的实现,非常类似啊。我们的结论就是:Servlet,它就是JAVA中的'一般处理程序'。

  1. XML(Extensible Markup Language)

  XML可扩展标记语言。在.NET中非经常常使用非经常常使用,为什么它是J2EE的一个规范呢,得益于XML的独立性跨平台性,这和Java具有的同样目标。

通过将Java和XML的组合。能够得到一个完美的具有平台独立性的解决方式。

  1. JMS(Java Message Service)

  JAVA消息服务。主要实现各个应用程序之间的通讯。

包括点对点和广播。

 

  1. JTA(Java Transaction Architecture)

  JTA定义了一种标准的API,应用系统由此能够訪问各种事务监控。

  1. JTS(Java Transaction Service)

  JTS是CORBAOTS事务监控的主要的实现。

JTS规定了事务管理器的实现方式。

  1. JavaMail

  JavaMail是用于存取邮件server的API,它提供了一套邮件server的抽象类。

不仅支持SMTPserver,也支持IMAPserver。刚学了TCP协议,当中就包括SMTP和IMAP,如今要学它们的实现了…GOOD

  1. JAF(JavaBeans Activation Framework)

  JavaMail利用JAF来处理MIME编码的邮件附件。MIME的字节流能够被转换成Java对象,或者转换自Java对象。大多数应用都能够不须要直接使用JAF。

 

总结

  通过对着13个规范的了解,我们发现一些经经常使用到的规范我们已经学过了。这说明什么,不同平台技术都是相通的,之间都是有联系的。

  J2EE的13个规范体现的是什么。通过上面那张图非常清楚的知道,分层。每一个规范有它自己的作用。对于系统更是减少了耦合性,也方便了开发者的分工合作。

开启 J2EE(一)—‘全明星队伍’的更多相关文章

  1. 开启 J2EE(六)— Servlet之Filter具体解释及乱码处理实例

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/akkzhjj/article/details/36471477 定义和功能 Filter:过滤器,它 ...

  2. 开启 J2EE(五)— Servlet之状态管理

    HTTP无状态协议 首先我们要知道: HTTP协议是无状态协议. 我们知道HTTP协议就是server通过Request从浏览器接收和Response向浏览器输出的这么一个过程(浏览器和server的 ...

  3. awd平台搭建及遇到的问题

    1.安装docker环境 a.使用的是ubuntu系统,通过sudo apt install docker.io进行docker得安装,此方式会自动启动docker服务. b.通过curl -s ht ...

  4. AWD平台搭建及遇到的问题分析

    1.安装docker环境 a.使用的是ubuntu系统,通过sudo apt install docker.io进行docker得安装,此方式会自动启动docker服务. b.通过curl -s ht ...

  5. J2EE面试题

    J2EE面试题 J2EE相关基础知识 1.面向对象的特征有哪些方面  1.  抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只 ...

  6. Tomcat服务无法开启,点击start不一会就变成stopped

    前天在学习J2EE方面技术时,运行一个调试示例,需要用到Tomcat服务,结果使用Myeclipse怎么也打不开服务.之后去尝试手动打开Tomcat服务也无法成功,一直弄了好几个小时.后来,问了一下隔 ...

  7. java J2EE与DiscuzX3.2的UCenter实现单点登录

    最近笔者在实现Java项目对discuz的整合.在此过程中,查了很多这方面的资料,发现网上并没有说得比较全面的文章.笔者博取众长以及自己在此过程中遇到的问题,写下来供大家参考,希望大家可以在这过程中少 ...

  8. eclipse ide for java ee developers 开发环境搭建(j2ee)

    转载自:http://www.iteye.com/topic/982182 真的是一片很不错的文章啊! 使用eclipse真的有年头了,相信java程序员没有不知道它的,最近在给团队中新来的应届生做指 ...

  9. Unity 定时开启/关闭外部应用

    自从加入工作的队伍里,博客都荒废了,今天周末,难得清静,写篇博客!刚才看到了Process类,随手写了个小demo.给大家分享下! 首先大家要对Process类有一些简单的了解,参考资料:https: ...

随机推荐

  1. Vue2.5开发去哪儿网App 详情页面开发

    一,banner 图的设计 1. 新建detail的路由 import Detail from '@/pages/detail/Detail' ...... { path: '/detail', na ...

  2. SpringBoot入门之基于XML的Mybatis

    上一博客介绍了下SpringBoot基于注解引入Mybatis,今天介绍基于XML引入Mybatis.还是在上一篇demo的基础上进行修改. 一.Maven引入 这个与上一篇的一样,需要引入mybat ...

  3. [PHP] 算法-二位有序数组中查找的PHP实现

    在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 1.二 ...

  4. Java并发编程:Java的四种线程池的使用,以及自定义线程工厂

    目录 引言 四种线程池 newCachedThreadPool:可缓存的线程池 newFixedThreadPool:定长线程池 newSingleThreadExecutor:单线程线程池 newS ...

  5. 性能监控(1)--linux下的top命令

    Linux下的监控工具 top命令 top命令能够实时显示系统中各个进程的资源占用情况,其输出信息分为两部分,前半部分为系统统计信息,后半部分是进程信息. 第一行是任务队列信息,它的结果等同于upti ...

  6. webpack4 系列教程(四): 单页面解决方案--代码分割和懒加载

    本节课讲解webpack4打包单页应用过程中的代码分割和代码懒加载.不同于多页面应用的提取公共代码,单页面的代码分割和懒加载不是通过webpack配置来实现的,而是通过webpack的写法和内置函数实 ...

  7. C#特性之数据类型

    这篇文章主要通过演示类在不同发展中的不通过定义方法,来向读者表述它们之间的区别和联系. 在C#1时代,我们喜欢这样定义类: public class Product { private string ...

  8. Android线程

    1.引言 在Android中,几乎完全采用了Java的线程机制,由于Android的特性,主线程只处理和界面相关的事情,子线程处理耗时操作.Android中扮演线程角色的有Thread.AsyncTa ...

  9. 【代码笔记】Web-HTML-段落

    一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  10. 《Attention is All You Need》浅读(简介+代码)

    2017年中,有两篇类似同时也是笔者非常欣赏的论文,分别是FaceBook的<Convolutional Sequence to Sequence Learning>和Google的< ...