当前位置: 技术问答>java相关
接触J2EE半年,越来越不懂J2EE,求教!!
来源: 互联网 发布时间:2015-07-17
本文导语: 一开始接触,就知道J2EE是企业级应用平台。他包括各种API,采用EJB,JSP,JavaBean等技术。 但是接触多了反而糊涂了, Wrox的《J2EE服务器端高级编程》这本书上提到的:J2EE定义了运行时的体系结构,(我对这句话的理解是...
一开始接触,就知道J2EE是企业级应用平台。他包括各种API,采用EJB,JSP,JavaBean等技术。
但是接触多了反而糊涂了,
Wrox的《J2EE服务器端高级编程》这本书上提到的:J2EE定义了运行时的体系结构,(我对这句话的理解是:J2EE定义了容器的概念,并且是对容器和程序员所做的工作进行划分的一种规范,可以这样理解吗?这句话能否作为对J2EE的定义?)
如果上面的假设成立,是不是意味着那么多API也好,EJB,JSP,JavaBean也好都不是“J2EE的定义”的必要条件。
那么如MVC之类的模式是什么呢?是对在容器中所要选择采用的诸多技术的一种流程样式。
其实这种流程样式也并不是十分明确的,他可能只是对EJB,和其他前台技术(指JSP之类做一个功能上的对应,就是说EJB对应Model对应商业逻辑)
如果是这样的话,是不是意味着在J2EE的定义里头甚至不包含“EJB处理商业逻辑,JSP等处理页面显示等等思想”J2EE的定义是否只意味着对容器和程序员所做的工作进行划分。
真是越来越糊涂了,真的是这样吗?我说的是真的吗?
但是接触多了反而糊涂了,
Wrox的《J2EE服务器端高级编程》这本书上提到的:J2EE定义了运行时的体系结构,(我对这句话的理解是:J2EE定义了容器的概念,并且是对容器和程序员所做的工作进行划分的一种规范,可以这样理解吗?这句话能否作为对J2EE的定义?)
如果上面的假设成立,是不是意味着那么多API也好,EJB,JSP,JavaBean也好都不是“J2EE的定义”的必要条件。
那么如MVC之类的模式是什么呢?是对在容器中所要选择采用的诸多技术的一种流程样式。
其实这种流程样式也并不是十分明确的,他可能只是对EJB,和其他前台技术(指JSP之类做一个功能上的对应,就是说EJB对应Model对应商业逻辑)
如果是这样的话,是不是意味着在J2EE的定义里头甚至不包含“EJB处理商业逻辑,JSP等处理页面显示等等思想”J2EE的定义是否只意味着对容器和程序员所做的工作进行划分。
真是越来越糊涂了,真的是这样吗?我说的是真的吗?
|
记得我刚学COM时,将COM与MFC、ATL、ActiveX控件、MTS等混在一起,也被弄得一团浆糊。后来终于理出了头绪,再在Windows平台下开发网络软件,不管是用VB/VC还是Delphi,都心中有线索了。
我刚看J2EE,但我发现它其实就是一套规范罢了,只要所有的人都遵守这个规范,他们所开发的各种东东如Serverlet,EJB,JSP等就可以相互合作,共同构成一个复杂的系统。什么WebLogic之类,只不过是符合J2EE规范的一个商业产品罢了。事实上EJB,JSP等就是表现为一整套规范,具体的组件符合EJB规范的就是EJB组件,就可以运行在WebLogic、Websphere这些EJB容器产品内。
至于MVC,则与J2EE无多大关联,那是面向对象理论中设计模式的领域。建议看一下《设计模式——可复用软件的基础》一书,这是经典著作,讲了23种设计模式,看了之后就明白,J2EE的多层分布式结构应用了许多设计模式(包括MVC),这些设计模式可用于一切面向对象的语言和环境中,并不局限于Java。事实上,VC中的MFC其实就是MVC模式的一个翻板,设计模式理论的出现与应用比Java语言还要早,最初大规模的应用可能是在C++类库的设计上。
呵呵,我刚从Windows平台转向研究J2EE,可能这些看法不一定对,等着J2EE高手指点指点。
我刚看J2EE,但我发现它其实就是一套规范罢了,只要所有的人都遵守这个规范,他们所开发的各种东东如Serverlet,EJB,JSP等就可以相互合作,共同构成一个复杂的系统。什么WebLogic之类,只不过是符合J2EE规范的一个商业产品罢了。事实上EJB,JSP等就是表现为一整套规范,具体的组件符合EJB规范的就是EJB组件,就可以运行在WebLogic、Websphere这些EJB容器产品内。
至于MVC,则与J2EE无多大关联,那是面向对象理论中设计模式的领域。建议看一下《设计模式——可复用软件的基础》一书,这是经典著作,讲了23种设计模式,看了之后就明白,J2EE的多层分布式结构应用了许多设计模式(包括MVC),这些设计模式可用于一切面向对象的语言和环境中,并不局限于Java。事实上,VC中的MFC其实就是MVC模式的一个翻板,设计模式理论的出现与应用比Java语言还要早,最初大规模的应用可能是在C++类库的设计上。
呵呵,我刚从Windows平台转向研究J2EE,可能这些看法不一定对,等着J2EE高手指点指点。
|
太死抠‘定义’二字了吧。
我相信没有几个人可以精确得下出定义,J2EE本来就是处于不断变化的一个状态,这个版本的规范制定出来了,难免会有缺憾或遗漏什么,这样,根据需要,下一个
版本又出现。就象以前没有MessageDrivenBean,后来有了。
所以EJB,JSP,JavaBean,Servlet,JMS,JNDI等等当然不能说它们是J2EE的定义,
谁知道这些东西随时间的推移,会不会被其它的更好的东西所取代?
至于一个J2EE应用程序要用哪些东西,这个得根据自己需要来吧,JSP,SERVLET也不是非用不可,我就喜欢EJB+Application的组合。
我相信没有几个人可以精确得下出定义,J2EE本来就是处于不断变化的一个状态,这个版本的规范制定出来了,难免会有缺憾或遗漏什么,这样,根据需要,下一个
版本又出现。就象以前没有MessageDrivenBean,后来有了。
所以EJB,JSP,JavaBean,Servlet,JMS,JNDI等等当然不能说它们是J2EE的定义,
谁知道这些东西随时间的推移,会不会被其它的更好的东西所取代?
至于一个J2EE应用程序要用哪些东西,这个得根据自己需要来吧,JSP,SERVLET也不是非用不可,我就喜欢EJB+Application的组合。
|
up
|
J2EE是Java2平台企业版(Java 2 Platform Enterprise Edition),它把Java的企业级API捆绑在一起,成为用Java语言进行服务器端的企业级应用部署的开发环境。
J2EE只是一个规范,不是产品。
J2EE包括很多内容,EJB是主要的,另外还有JNDI,JDBC,JMS,JTA和JTS,RMI等等,其中Servlet和JSP也是J2EE的一个组成部分。
MVC模式是指三层体系结构,其中包括表示层,商务逻辑层和数据层,并不是说和EJB什么的一一对应,表示层包括JSP或者ASP等脚本语言组成的页面,但是也有表示层逻辑控制组件,这些组件也可以是EJB的。
J2EE只是一个规范,不是产品。
J2EE包括很多内容,EJB是主要的,另外还有JNDI,JDBC,JMS,JTA和JTS,RMI等等,其中Servlet和JSP也是J2EE的一个组成部分。
MVC模式是指三层体系结构,其中包括表示层,商务逻辑层和数据层,并不是说和EJB什么的一一对应,表示层包括JSP或者ASP等脚本语言组成的页面,但是也有表示层逻辑控制组件,这些组件也可以是EJB的。
|
MVC:model:数据源,就是数据层!
view:视图,通俗一点,就是表示层,比如jsp,xml,html
control:用于控制,在其中也能实现商务逻辑。可用servlet实现,其作用是当客户发出请求时,用它决定将请求分配给哪一个jsp(对于j2ee)处理。
view:视图,通俗一点,就是表示层,比如jsp,xml,html
control:用于控制,在其中也能实现商务逻辑。可用servlet实现,其作用是当客户发出请求时,用它决定将请求分配给哪一个jsp(对于j2ee)处理。
|
安我的印象中,J2EE只是Java多层应用开发的标准,他提供了一系列的标准API和编程的模式,如EJB,JavaBean,JSP,Servlet等等。
|
往往光是有J2EE还是不够的,还需要一个更细致的框架,就像sun的BluePrints,都是一个很不错的框架。J2EE只是定义了更高层次的应用程序规范,我们还需要根据自己的需要来自己再封装一层高级应用。
|
j2ee是一套api及其规范说明,sun搞出这个东东是为了让构建企业级的应用程序更加规范化,简单化。,你可以先想想构建一个企业级的系统都需要些什么东西,之后你再看看j2ee,你应该就能在其中找到你所需要的api来实现(当然现在的j2ee还没有完善),你要是想真正了解它,你可以先看看在它出现之前建造一个企业级系统是怎么一回事,而j2ee的出现正是为了解决以前那种方案的缺点。再就是关于mvc,它只不过是一种设计模式罢了,想想你在写一个应用程序时开始是怎么做的,之后呢?也许每个人都有他自己的个性化方式,而mvc则是提供了一种比较合理的,且规范化的设计模式,按照这个设计模式去编写你的应用程序的话你就可以比较轻松的度过开始时的那段策划期了,而且按照这个模式写的应用程序也具有良好的结构,易于管理和改进