开启 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: ...
随机推荐
- SpringBoot入门之Thymeleaf的使用
在.net的MVC3 或更高版本等支持 Razor 的框架里使用cshtml,Razor是一种简单的编程语法,用于在网页中嵌入服务器端代码.在使用springboot开发mvc时也有与.net类似的视 ...
- 【Spring】10、Spring中用@Component、@Repository、@Service和 @Controller等标注的默认Bean名称会是小写开头的非限定类名
@Service用于标注业务层组件(我们通常定义的service层就用这个) @Controller用于标注控制层组件(如struts中的action) @Repository用于标注数据访问组件,即 ...
- Java学习第一篇 — 字符串
package StringTest; public class TestString { public static void main(String[] args){ // String str= ...
- 在C#中的构造函数和解析函数
构造函数 class A() { A() {Console.write("构造函数");} } 当你在程序种出现 A a=new A();的时候 程序自动执行 构造函数 A() { ...
- RyuJIT的华丽转身【译文】
2018-06-19 RyuJIT是作为.NET即时编译器的代号称谓,它是.NET运行时的基本组件之一.与此相反的是,Roslyn作为C#编译器,其编译C#代码成为IL字节码.然后,其再将IL字节码编 ...
- vue项目未加载完成前显示loading...
1.在Index.html里面加入loading的元素,让loading元素显示,让app元素隐藏 <!DOCTYPE html> <html> <head> &l ...
- 【代码笔记】Web-ionic tab(选项卡)
一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- XML语言学习随笔
XML和HTML都是W3C的定制的标准,XML的诞生本身是为了替代不成熟的HTML,但是因为现实的环境,XML替代HTML并未成功.之后W3C为了代码严谨性的决心,又发布了升级版的标记语言XHTML, ...
- 浅谈Arrays.asList()方法的使用
首先,该方法是将数组转化为list.有以下几点需要注意: (1)该方法不适用于基本数据类型(byte,short,int,long,float,double,boolean) (2)该方法将数组与列表 ...
- JMeter—监听器(十二)
参考<全栈性能测试修炼宝典JMeter实战>第六章 JMeter 元件详解中第七节监听器用来显示JMeter取样器的测试结果,能够以树.表.图形形式显示,也可以以文件方式保存. 一.设置默 ...