|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
主要缺点就是:速度比较慢,没有C和C++快
弁言
跟着Java手艺的渐渐成熟与完美,作为创建企业级使用的尺度平台,J2EE平台失掉了长足的开展。借助于J2EE标准中包括的多项手艺:EnterpriseJavaBean(EJB)、JavaServlets(Servlet)、JavaServerPages(JSP)、JavaMessageService(JMS)等,开辟出了很多使用体系。可是,在传统J2EE使用的开辟过程当中也呈现了一些成绩:1)数据模子和逻辑模子之间的冲突。今朝利用的数据库基础上都是干系型数据库,而Java实质上是一种面向对象的言语,对象在存储和读取时利用SQL和JDBC举行数据库操纵,下降了编程的效力和体系的可保护性;2)传统的J2EE使用多接纳基于EJB的分量级框架,这类框架合适于开辟年夜型企业使用,可是利用EJB容器举行开辟和调试必要泯灭大批工夫。为了下降代码的耦合性,进步体系的开辟效力,本文提出了一种基于Struts框架和Hibernate框架的J2EE使用开辟战略。
数据耐久层及Hibernate
Hibernate是一个数据耐久层框架,是一种完成对象和干系之间映照(O/RMapping)的工具,它对JDBC举行了轻量级的对象封装,使程序员可使用对象编程头脑来操纵数据库。它不但供应了从Java类到数据表的映照,也供应了数据查询和恢复机制。相对利用JDBC和SQL来操纵数据库,利用Hibernate能年夜年夜的进步完成的效力。Hibernate框架用设置文件的情势来界说Java对象和数据表之间的映照干系,同时在更深的层面将数据表之间的干系注释为Java对象之间的承继及包括等干系。经由过程利用HQL语句将庞大的干系算法用对象的体例形貌,在很年夜水平上简化了对数据的查询,加速了开辟的效力。在Hibernate中有一个复杂而直不雅的API,用于对数据库所暗示的对象实行查询。要创立或修正这些对象,只需在程序中与它们举行交互,然后告知Hibernate保留便可。如许,大批封装耐久化操纵的营业逻辑不再必要编写啰嗦的JDBC语句,从而使数据耐久层失掉了极年夜的简化。
用Struts完成MVC架构
MVC(Model-View-Controller)由TrygveReenskaug提出,起首被使用在SmallTalk-80情况中,是很多交互和界面体系的组成基本。依据界面计划可变性的需求,MVC把交互体系的构成分化成模子、视图、把持器三部分。
模子(Model)是软件所处置成绩逻辑在自力于内在显现内容和情势情形下的内涵笼统,封装了成绩的中心数据、逻辑和功效的盘算干系,自力于详细的界面表达和I/O操纵。视图(View)把暗示模子数据及逻辑干系和形态的信息及特定情势展现给用户。它从模子取得显现信息,关于不异的信息能够有多个分歧的显现情势或视图。把持器(Controller)是处置用户与软件的交互操纵的,其职责是把持供应模子中任何变更的传布,确保用户界面于模子间的对应接洽;它承受用户的输出,将输出反应给模子,进而完成对模子的盘算把持,是使模子和视图和谐事情的部件。一般一个视图对应一个把持器。模子、视图与把持器的分别,使得一个模子能够具有多个显现视图。假如用户经由过程某个视图的把持器改动了模子的数据,一切别的依附于这些数据的视图都应反应到这些变更。因而,不管什么时候产生了何种数据变更,把持器城市将变更关照一切的视图,招致显现的更新。这实践上是一种模子的变更-传布机制。
Struts框架最早是作为ApacheJakarta项目标构成部分问世运做,它承继了MVC的各项特征,并依据J2EE的特性,做了响应的变更与扩大。Struts框架很好的分离了Jsp,JavaServlet,JavaBean,Taglib等手艺。在Struts中,承当MVC中把持器脚色的是ActionServlet。ActionServlet是一个通用的把持组件。这个把持组件供应了处置一切发送到Struts的HTTP哀求的出口点。它截取和分发这些哀求到响应的举措类(这些举措类都是Action类的子类)。别的把持组件也卖力用响应的哀求参数添补ActionForm(FromBean),并传给举措类(ActionBean)。举措类会见中心贸易逻辑,即会见JavaBean或挪用EJB。最初举措类把把持权传给后续的JSP文件,由JSP文件天生视图。一切这些把持逻辑使用Struts-config.xml文件来设置。在Struts框架中,视图次要由JSP天生页面完成,Struts供应丰厚的JSP标签库,这有益于分隔体现逻辑和程序逻辑。模子以一个或多个JavaBean的情势存在。在Struts中,次要存在三种Bean,分离是:Action,ActionForm,EJB大概JavaBean。
Struts框架没有详细界说模子层的完成,在实践开辟中,模子层一般是和营业逻辑严密相连的,而且要对底层数据举行操纵。上面先容一种开辟战略,将Hibernate引进到Struts框架的模子层中,利用它来举行数据封装和映照,供应耐久化的撑持。
<p>
比如模式、敏捷方法什么的,这些思想好,但是实施的人没有理解而且没有正确运用这些知识导致了开发周期的延长。比如说对象,通过getName()方法不能获取对象的名字。 |
|