金色的骷髅 发表于 2015-1-18 11:10:20

JAVA网页编程之初学者怎样开辟出高质量的J2EE体系

最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。j2ee|初学  J2EE进修者愈来愈多,J2EE自己手艺不休在开展,出现出各类观点,本文章试图从一种简单了解的角度对这些观点向初学者举行注释,以便把握进修J2EE进修偏向。
  起首我们必要晓得Java和J2EE是两个分歧观点,Java不但是指一种言语,已代表与微软分歧的别的一个伟大阵营,以是Java偶然是指一种软件体系的派别,固然今朝次要是.NET和Java两年夜支流系统。

  J2EE能够说指Java在数据库信息体系上完成,数据库信息体系从初期的dBase、到Delphi/VB等C/S布局,开展到B/S(Browser扫瞄器/Server服务器)布局,而J2EE次要是指B/S布局的完成。

  J2EE又是一种框架和尺度,框架相似API、库的观点,可是要超越它们。假如必要具体懂得框架,可先从计划形式入手下手进修。

  J2EE是一个虚的年夜的观点,J2EE尺度次要有三种子手艺尺度:WEB手艺、EJB手艺和JMS,谈到J2EE应当说终极要落实到这三个子观点上。

  这三种手艺的每一个手艺在使用时都触及两个部分:容器部分和使用部分,Web容器也是指Jsp/Servlet容器,你假如要开辟一个Web使用,不管是编译或运转,都必需要有Jsp/Servlet库或API撑持(除JDK/J2SE之外)。

  Web手艺中除Jsp/Servlet手艺外,还必要JavaBeans或JavaClass完成一些功效大概包装照顾数据,以是Web手艺最后赤身简称为Jsp/Servlet+JavaBeans体系。
  谈到JavaBeans手艺,就触及到组件构件手艺(component),这是Java的中心基本部分,良多软件计划观点(计划形式)都是经由过程JavaBeans完成的。

  JavaBeans不属于J2EE观点范围中,假如一个JavaBeans对象被Web手艺(也就是Jsp/Servlet)挪用,那末JavaBeans就运转在J2EE的Web容器中;假如它被EJB挪用,它就运转在EJB容器中。

  EJB(企业JavaBeans)是一般JavaBeans的一种提拔和标准,由于企业信息体系开辟中必要一个可伸缩的功能和事件、平安机制,如许能包管企业体系光滑开展,而不是开展到一种范围从头改换一套软件体系。

  至此,JavaBeans组件开展到EJB后,并非说之前的那种JavaBeans情势就消散了,这就天然构成了两种JavaBeans手艺:EJB和POJO,POJO完整分歧于EJB观点,指的是一般JavaBeans,并且这个JavaBeans不依靠某种框架,大概爽性能够说:这个JavaBeans是你为这个使用程序独自开辟创立的。

  J2EE使用体系开辟工具有良多:如JBuilder、Eclipse等,这些IDE起首是Java开辟工具,也就是说,它们主要基础功效是能够开辟出JavaBeans或Javaclass,可是假如要开辟出J2EE体系,就要落实到要末是Web手艺或EJB手艺,那末就有大概要一些专门模块功效(如eclipse必要lomboz插件),最主要的是,由于J2EE体系辨别为容器和使用两个部分,以是,在任何开辟工具中开辟J2EE都必要指定J2EE容器。

  J2EE容器分为WEB容器和EJB容器,Tomcat/Resin是Web容器;JBoss是EJB容器+Web容器等,个中Web容器间接利用Tomcat完成的。以是你开辟的Web使用程序能够在下面两种容器运转,而你开辟的Web+EJB使用则只能够在JBoss服务器上运转,贸易产物Websphere/Weblogic等和JBoss属于统一种性子。

  J2EE容器也称为J2EE服务器,年夜部分时它们观点是分歧的。
  假如你的J2EE使用体系的数据库毗连是经由过程JNDI取得,也就是说是沉着器中取得,那末你的J2EE使用体系基础与数据库有关,假如你在你的J2EE使用体系耦合了数据库JDBC驱动的设置,那末你的J2EE使用体系就无数据库观点色采,作为一个成熟必要推行的J2EE使用体系,不保举和详细数据库耦合,固然这个中怎样包管J2EE使用体系运转功能又是表现你的计划程度了。

  权衡J2EE使用体系计划开辟程度上下的尺度就是:解耦性;你的使用体系各个功效是不是可以完全离开?是不是不互相依附,也只要如许,才干表现可保护性、可拓展性的软件计划方针。

  为了到达这个目标,出生各类框架观点,J2EE框架尺度将一个体系分别为WEB和EJB次要部分,固然我们偶然不是以这个详细手艺辨别,而是从计划上笼统为体现层、服务层和耐久层,这三个条理从一个高度将J2EE分别开来,完成解耦目标。

  因而,我们实践编程中,也要将本人的功效向这三个条理上靠,做到小气向分明,泾渭明白,可是没有手艺上束缚限定要做到这点是很不简单的,因而我们仍是必需借助J2EE详细手艺来完成,这时候,你可使用EJB标准完成服务层和耐久层,Web手艺完成体现层;

  EJB为何能将服务层从Jsp/Servlet手平分离出来,由于它对JavaBeans编码有强迫的束缚,如今有一种对JavaBeans弱束缚,利用Ioc形式完成的(固然EJB3.0也接纳这类体例),在Ioc形式出生前,一样平常都是经由过程工场形式来对JavaBeans束缚,构成一个服务层,这也是是Jive如许开源论坛计划道理之一。

  由此,将服务层从体现层平分离出来今朝有两种可选架构选择:办理一般JavaBeans(POJO)框架(如Spring、JdonFramework)和办理EJB的EJB框架,由于EJB不但是框架,仍是尺度,而尺度能够扩大开展,以是,这两种区分未来是大概含混,被归入统一个尺度了。 可是,团体以为:尺度制订是为某个目标服务的,总要就义一些调换别的一些,以是,这两种架构会长工夫并存。

  这两种架构不合也已经出生一个新名词:完整POJO的体系也称为轻量级体系(lightweight),实在这个名词自己就没有一个严厉界说,更多是一个吸惹人的招牌,轻量是指简单进修简单利用吗?依照这个界说,实在轻量Spring等体系其实不简单进修;并且EJB3.0(仍然叫EJB)今后的体系是不是可称为轻量级了呢?
  后面谈了服务层框架,利用服务层框架能够将JavaBeans从Jsp/Servlet平分离出来,而利用体现层框架则能够将Jsp中残剩的JavaBeans完整分别,这部分JavaBeans次要卖力显现相干,通常为经由过程标签库(taglib)完成,分歧框架有分歧本人的标签库,Struts是使用对照普遍的一种体现层框架。

  如许,体现层和服务层的分别是经由过程两种框架到达目标,残剩的就是耐久层框架了,经由过程耐久层的框架将数据库存储从服务层平分离出来是其目标,耐久层框架有两种偏向:间接本人编写JDBC等SQL语句(如iBatis);利用O/RMapping手艺完成的Hibernate和JDO手艺;固然另有EJB中的实体Bean手艺。

  耐久层框架今朝出现百花齐放,各有优弱点的近况,以是正如体现层框架一样,今朝没有一个框架被指定为尺度框架,固然,体现层框架如今又出来了一个JSF,它代表的页面组件观点是一个新的开展偏向,可是庞大的完成让人有些忘而却步。

  在一切这些J2EE手艺中,固然SUN公司发扬了很年夜的感化,不外整体来讲:收集上有如许一个评价:SUN的实际世界无敌;SUN的产物用起来撞墙;关于初学者,出格是那些试图经由过程或已经由过程SUN认证的初学者,从速挣脱SUN的暗影,当即开溜,利用开源范畴的产物来完成本人的使用体系。

  最初,你的J2EE使用体系假如接纳下面提到的体现层、服务层和耐久层的框架完成,基础你也能够在无需深入把握计划形式的情形下开辟出一个高质量的使用体系了。

  还要注重的是:开辟出一个高质量的J2EE体系还必要准确的营业需求了解,那末域建模供应了一种对照实在可行的准确了解营业需求的办法,相干具体常识可从UML角度分离了解。

  固然,假如你想计划本人的行业框架,那末第一步从计划形式入手下手吧,由于计划形式供应你一个完成JavaBeans或类之间解耦参考完成办法,当你学会了体系基础单位JavaBean或类之间解耦时,那末体系模块之间的解耦你便可能把握,进而你就能够完成行业框架的提炼了,这又是别的一个开展偏向了。

  以上理念能够总结为一句话:
  J2EE开辟三件宝:DomainModel(域建模)、patterns(形式)和framework(框架)。

  保举一套高质量的J2EE开源体系:JPestore

用winrar打包j2ee的程序和用IDE打包应用程序是一样的。按照你的想法,你是不是也希望服务器都整合由一家公司提供呢?

谁可相欹 发表于 2015-1-19 21:18:25

接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。

冷月葬花魂 发表于 2015-1-20 17:29:31

Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。

只想知道 发表于 2015-1-29 13:38:47

Java是一种计算机编程语言,拥有跨平台、面向对java

第二个灵魂 发表于 2015-2-2 16:59:24

是一种使网页(Web Page)产生生动活泼画面的语言

admin 发表于 2015-2-2 21:54:49

你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。

老尸 发表于 2015-2-8 07:50:28

是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能

不帅 发表于 2015-2-8 20:48:47

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

仓酷云 发表于 2015-2-9 21:16:53

是一种为 Internet发展的计算机语言

金色的骷髅 发表于 2015-2-27 21:38:16

任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言

蒙在股里 发表于 2015-3-9 14:28:15

我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。

小妖女 发表于 2015-3-16 23:33:51

http://www.jdon.com/去下载,或到同济技术论坛的服务器ftp://nro.shtdu.edu.cn去下,安装上有什么问题,可以到论坛上去提问。

灵魂腐蚀 发表于 2015-3-23 06:44:21

关于设计模式的资料,还是向大家推荐banq的网站 http://www.jdon.com/,他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
页: [1]
查看完整版本: JAVA网页编程之初学者怎样开辟出高质量的J2EE体系