开启 J2EE(一)—‘全明星队伍’
版权声明:本文为博主原创文章,未经博主同意不得转载。 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交流,给客户提供需求的。
业务逻辑层:处理逻辑,和后台数据库打交道。
协议:解决业务逻辑层和表示层的业务,数据库的訪问,事务,邮件。以及消息等等。
‘全明星队伍’
从VB到.NET学过来的,肯定知道ODBC,刚接触数据库时学的那五个样例就使用的ODBC数据源连接的数据库,然后到后面的VB系统以及.NET系统中使用的ADO訪问数据库。JDBC也是一样的东西。仅仅只是是基于Java的。JDBC仅仅提供一种标准。
- JNDI(Java Name and Directory Interface)
Java命名和文件夹接口。怎么理解呢,简单的理解就是JNDI是通过一个命名和文件夹获得系统外部的资源,这个资源能够是JDBC数据源、资源实体以及EJB引用。
JNDI能够形象成一棵树。外部能够给它挂各种各样的东西。我们要取就从树上取,也就是分层的思想啊,更进一步就是实现分布式的方法。
- EJB(Enterprise Java Beans)
Java 企业Bean,EJB听过非常多次了。通过查询有一些自己的了解吧,Bean本身就是Java类。是类就easy理解,JavaBean将功能、处理、值、数据库訪问等等通过对象进行打包,通过get和set进行赋值和取值。不仅如此。一次打包能够在不论什么地方运行。按这样说实体就是一种Bean。
- RMI(Remote Method Invoke)
RMI远程方法调用,用于client和服务端数据传递的,是EJB的基础,增强的Java分布式开发的能力。
- Java IDL/CORBA
JavaIDL使分布式、支持Web的Java应用能够基于IIOP协议透明地调用远程服务。不甚了解。
- JSP(Java Server Pages)
JSP。立即反应ASP,ASP.NET是HTML+C#,JSP是HTML+JAVA,不同的也就是由于JAVA,JSP是跨平台的。
- Java Servlet
Servlet一种小的Java程序,扩展了Webserver的功能。
学习AJAX时,在NetBeans中接触到过,可是不知道为什么会用。后来在做评教系统是用了非常多AJAX,然后通过异步传输在一般处理程序中进行处理。对照一般处理程序和Servlet的方法名和里面的实现,非常类似啊。我们的结论就是:Servlet,它就是JAVA中的'一般处理程序'。
- XML(Extensible Markup Language)
XML可扩展标记语言。在.NET中非经常常使用非经常常使用,为什么它是J2EE的一个规范呢,得益于XML的独立性跨平台性,这和Java具有的同样目标。
通过将Java和XML的组合。能够得到一个完美的具有平台独立性的解决方式。
- JMS(Java Message Service)
JAVA消息服务。主要实现各个应用程序之间的通讯。
包括点对点和广播。
- JTA(Java Transaction Architecture)
JTA定义了一种标准的API,应用系统由此能够訪问各种事务监控。
- JTS(Java Transaction Service)
JTS是CORBAOTS事务监控的主要的实现。
JTS规定了事务管理器的实现方式。
- JavaMail
JavaMail是用于存取邮件server的API,它提供了一套邮件server的抽象类。
不仅支持SMTPserver,也支持IMAPserver。刚学了TCP协议,当中就包括SMTP和IMAP,如今要学它们的实现了…GOOD
- JAF(JavaBeans Activation Framework)
JavaMail利用JAF来处理MIME编码的邮件附件。MIME的字节流能够被转换成Java对象,或者转换自Java对象。大多数应用都能够不须要直接使用JAF。
总结
通过对着13个规范的了解,我们发现一些经经常使用到的规范我们已经学过了。这说明什么,不同平台技术都是相通的,之间都是有联系的。
J2EE的13个规范体现的是什么。通过上面那张图非常清楚的知道,分层。每一个规范有它自己的作用。对于系统更是减少了耦合性,也方便了开发者的分工合作。
开启 J2EE(一)—‘全明星队伍’的更多相关文章
- 开启 J2EE(六)— Servlet之Filter具体解释及乱码处理实例
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/akkzhjj/article/details/36471477 定义和功能 Filter:过滤器,它 ...
- 开启 J2EE(五)— Servlet之状态管理
HTTP无状态协议 首先我们要知道: HTTP协议是无状态协议. 我们知道HTTP协议就是server通过Request从浏览器接收和Response向浏览器输出的这么一个过程(浏览器和server的 ...
- awd平台搭建及遇到的问题
1.安装docker环境 a.使用的是ubuntu系统,通过sudo apt install docker.io进行docker得安装,此方式会自动启动docker服务. b.通过curl -s ht ...
- AWD平台搭建及遇到的问题分析
1.安装docker环境 a.使用的是ubuntu系统,通过sudo apt install docker.io进行docker得安装,此方式会自动启动docker服务. b.通过curl -s ht ...
- J2EE面试题
J2EE面试题 J2EE相关基础知识 1.面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只 ...
- Tomcat服务无法开启,点击start不一会就变成stopped
前天在学习J2EE方面技术时,运行一个调试示例,需要用到Tomcat服务,结果使用Myeclipse怎么也打不开服务.之后去尝试手动打开Tomcat服务也无法成功,一直弄了好几个小时.后来,问了一下隔 ...
- java J2EE与DiscuzX3.2的UCenter实现单点登录
最近笔者在实现Java项目对discuz的整合.在此过程中,查了很多这方面的资料,发现网上并没有说得比较全面的文章.笔者博取众长以及自己在此过程中遇到的问题,写下来供大家参考,希望大家可以在这过程中少 ...
- eclipse ide for java ee developers 开发环境搭建(j2ee)
转载自:http://www.iteye.com/topic/982182 真的是一片很不错的文章啊! 使用eclipse真的有年头了,相信java程序员没有不知道它的,最近在给团队中新来的应届生做指 ...
- Unity 定时开启/关闭外部应用
自从加入工作的队伍里,博客都荒废了,今天周末,难得清静,写篇博客!刚才看到了Process类,随手写了个小demo.给大家分享下! 首先大家要对Process类有一些简单的了解,参考资料:https: ...
随机推荐
- 使用centos 7安装conpot
使用CentOS的版本7.3和Conpot 0.5.1(也可能适用于其他CentOS的版本) 1.通过ssh登录系统,并需要具有足够的系统特权(e.g root) 2.系统升级 yum -y upda ...
- JavaScript之破解数独(附详细代码)
在上一篇分享中,我们用Python和Django来破解数独,这对不熟悉Python和Django的人来说是非常不友好的.这次,笔者只用HTML和JavaScript写了破解数独的程序,对于熟悉前端 ...
- C# ListBox 自动滚动到底部 方法:
在ListBox中添加一条记录(ListBox.Items.Add方法)后,滚动条会自动回到顶部.我们可能更希望它自动滚动到底部,简要介绍几种方法. 方法一: this.listBox1.Items. ...
- Ado.Net实体数据模型EF,如何在代码中添加数据库连接密码
在创建EF模型的时候,VS2013提示说“在连接字符串中存储敏感数据可能有安全风险”,于是我选择了在代码中添加,可是如何通过代码添加呢? 我在网上百度了下,没有人说的清楚直观. 假设我们创建了一个名字 ...
- datatable删除行之datatable.Rows[i].Delete()。标记之后行没有了
使用Delete()之后行消失了 先在for循环外加上dt.AcceptChanges(); 删除时在dt.AcceptChanges();
- 为什么要先装IIS后装.Net Framework?
1.动态页面和静态页面的区别 动态页面(动态网站):通过C#代码(或别的语言)与服务器的交互的实现(比如新建一个ashx一般处理程序中的C#代码就可以和服务器实现交互,修改数据库,上传图片等都属于和服 ...
- IBatisNet动态update以及DateTime类型字段处理
在维护一个老项目中碰到的问题.SQL配置如下(只简单列出两个字段): <update id="ProjectInfo.Update" parameterClass=" ...
- Spring基于注解和XML混合方式的使用
首先要明白,基于注解和XML两种方式的实现功能是一样的,只是两种不同的配置方式. 一.IoC配置 1.配置xml 在使用注解与xml结合的方式配置IoC之前,首先要引入context标签: xmlns ...
- vue.js及项目实战[笔记]— 04 axios
一. axios 1. 基本使用 axios.method('url',[,...data],options) .then(function(res){ }) .catch(function(err) ...
- 你的BI应用处于什么阶段?解读Gartner BI成熟度模型
文 | 帆软数据应用研究院 水手哥 本文出自:知乎专栏<帆软数据应用研究院>——数据干货&资讯集中地 无论国内还是国外,多数企业的BI和分析平台建设之路并不平坦:一是对自身的环 ...