开启 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: ...
随机推荐
- JavaWeb学习 (十七)————JSP属性范围
所谓的属性范围就是一个属性设置之后,可以经过多少个其他页面后仍然可以访问的保存范围. 一.JSP属性范围 JSP中提供了四种属性范围,四种属性范围分别指以下四种: 当前页:一个属性只能在一个页面中取得 ...
- Apollo 1 融合 Spring 的三个入口
前言 Spring 作为 Java 世界非官方标准框架,任何一个中间件想要得到良好的发展,必须完美支持 Spring 的各种特性,即:无缝融入 Spring. Apollo 作为分布式配置中心,服务于 ...
- [PHP] 算法-数组中出现次数超过一半的数字的PHP实现
数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2.如果不存在 ...
- 详解 ESLint 规则,规范你的代码
在很久之前就想通过工具来规范自己的代码风格,减少程序出错的概率,如果看过我的 一个前端程序猿的Sublime Text3的自我修养 ,这篇博客的朋友,肯定知道在当时我使用 SublimeLinter- ...
- Ajax实现的城市二级联动二
上一篇联动一种只是城市用ajax请求获取并渲染,这里将省份也用ajax请求并渲染 1.HTML <select id="province"> <option> ...
- Java 内部类的简单介绍
内部类的三种分类(成员内部类,局部内部类,匿名内部类) 1.成员内部类 (类似于成员变量和成员方法) 在类的外部类的方法中去调用内部类 输出结果: 另一种直接在别的类中使用内部类,不过需要先创建外部 ...
- HDU5543(SummerTrainingDay03-O DP)
Pick The Sticks Time Limit: 15000/10000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others ...
- mysql 5.7 线程阻塞处理
出现的错误: ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction 解决办法: 查看sleep的进程 m ...
- 理解微信小程序Wepy框架的三个事件交互$broadcast,$emit,$invoke
$broadcast: $broadcast事件是由父组件发起,所有子组件都会收到此广播事件,除非事件被手动取消.事件广播的顺序为广度优先搜索顺序,如上图,如果页面Page_Index发起一个$bro ...
- input 输入框 change 事件和 blur 事件
输入框的 change 和 blur 事件绝大多数情况下表现是一致的,输入结束后离开输入框会先后触发 change 和 blur.那么这两个事件的区别在哪呢? 当文本框获得焦点后,没有输入任何内容, ...