您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > struts1.2+hibernate3.1+spring2.0
在当今的众多的开发框架中,struts,hibernate,spring退颖而出,已经成为了现如今的流行趋势。由于struts1.0的版本到struts2.0的变化太大,所以先介绍struts1.0版本和spring和hibernate的整合。在MyEclipse6.5中,也可以找到这些包的相应的支持,不用去网站上辛苦的下载,对于新手来说,这样的入门也比较简单,好了言归正传,让我们进入我们的java编程的入门吧!我们先打开我们的MyEclipse6.5,第一步是新建一个web项目我们将其命名为together而J2EESpecificationLevel下选中JavaEE5.0点击finish后,这样我们就新建了名为together一个web项目。在src下,创建com.rw.session包,com.rw.dao包,com.rw.pojo包,com.rw.service包。第二步,让我们增加spring的支持和struts的支持,以及hibernate支持。先增加spring2.0的支持,右击我们的项目together,你将可以在下拉菜单中找到MyEclipse,并且在其的子菜单下找到AddSpringCapabilities…然后点击AddSpringCapabilities…然后再出现的界面中Springversion选中Spring2.0的选项在下面列出的libraries里,选中Spring2.0AOPlibraries,Spring2.0Corelibraries,Spring2.0Weblibraries,Hibernate3.2Corelibraries,Hibernate3.2Annotations&EntityManager,Hibernate3.2AdvancedSupportlibraries。(这里就是增加了spring2.0几个主要的包)在JARLibraryInstallation里选中CopycheckLibrary…(将JAR包的拷贝到本地)点击next后,在出现的界面中Folder中是对spring的配置文件的位置选择,File则是spring配置文件的名字。我们将其配置文件放置在WebRoot/WEB-INF里,我们配置文件的名字设为config.xml然后点击finish,我们添加完成了spring2.0的支持。找到我们的项目together,右击我们的项目together,你将可以在下拉菜单中找到MyEclipse,并且在其的子菜单下找到AddStrutsCapabilities…然后点击AddStrutsCapabilities…然后再出现的界面中strutsspecification里选中struts1.2在Basepackagefornewclass里是在src下建立包的,我们创建为com.rw.struts点击finish,这样我们的struts1.2的支持也就建立起来了。找到我们的项目together,右击我们的项目together,你将可以在下拉菜单中找到MyEclipse,并且在其的子菜单下找到AddHibernateCapabilities…然后点击AddHibernateCapabilities…然后再出现的界面中Hibernatespecification里选中Hibernate3.1在下面列出的libraries里,选中Hibernate3.1Corelibraries,Hibernate3.1AdvancedSupportlibraries,spring2.0PersistenceCorelibraries,spring2.0PersistenceJDBClibraries。在JARLibraryInstallation里选中CopycheckLibrary…(将JAR包的拷贝到本地)点击next后,在点击下一步勾选掉CreateSpringHibernateSessionFactory…然后再点击下一步,然后会让我们去添加一个和数据库的连接,如下图图1.0在此将关系到如何建立一个反向工程,为了方面我使用Oracle数据库在MyEclipse6.5的右上方找到myeclipsedatabaseexplorer且点击它在接下来出现的页面,右击白色区域会出现new,且点击它在接下来出现的页面Drivertemplate是选择是什么样的数据库(我们选择Oracle(Thindriver))Drivername是给它取个名字(我们可以取demo)ConnnectionURL是使用数据库的地址(我们使用本机上的Oracle的jdbc:oracle:thin:@localhost:1521:mis)username(我们可以使用scott)password(我们可以使用tiger)DriverJARs是要加上Oracle的驱动包(根据自己的包的位子而定)Savepassword这个最好是勾选上当你点击finish后,你的MyEclipse6.5已经和数据库开始沟通了。。在MyEclipse的右上角找到MyEclipsejavaEnterprise且点击它回到原来的页面了好,我们现在继续完成hibernate3.1的添加,在上面我们已经介绍到了(图1.0)的地方,而现在我们就可以把我们的demo添加进去了,DBDriver的下拉表中选中demo如下图点击下一步,在javapackage里你可以点击new就是新建一个HibernateSessionFactory工厂的位置(我们可以放置com.rw.session),然后点击finish,我们hibernate3.1的支持也就站立完成了。第三步,我们在Oracle数据库中Scott下建立一个表userinfo和建立一个序列need;在com.rw.pojo包下生成userinfo映射文件。userinfo表中IDnumber(10)设为主键USERNAMEVARCHER2(50)PASSWORDVARCHER2(50)CARDIDVARCHER2(50)建立序列need在com.rw.pojo包下生成userinfo映射文件,首先在MyEclipse6.5的右上方找到myeclipsedatabaseexplorer且点击它在出现的页面上找到我们刚刚建立的demo,且双击它,打开文件后找到SCOTT,打开文件后找到table下的我们刚刚建立user表后,右击它,你会发现hibernateReverseengineering…再单击它就如图在出现的页面中,javasrcfolder里,选择我们的项目together下面的src下面的com.rw.pojo;然后点击createpojo。。。(创建pojo的mapping文件);点击javadataobject。。。(自动生成userinfo表的字段)点击next,在页面中Idgenerate的下拉框中选择sequence(Oracle的主键增长方式)点击next,在页面上找到我们的userinfo单击一下,在出现的IdGenerator里再次选择sequence,点击finish,我们的表的映射也就完成了!在MyEclipse的右上角找到MyEclipsejavaEnterprise且点击它,后你会发现我们com.rw.pojo包下,生成了user和hbm.xml的两个文件,如下图打开我们的Userinfo.hbm.xml文件,我们要做的是因为Oracle不能自增长所以我们要在这个文件的id主键里加上need序列代码是:idname=idtype=java.lang.Longcolumnname=IDprecision=10scale=0/generatorclass=sequenceparamname=sequenceNEED/param/generator/id注意:paramname=sequenceNEED/param这个就是我们所加的序列名为need第四步,现在我们要让hibernate3.1和spring2.0组合了。首先,大家要知道hibernate是持久层和数据库进行交互的,而spring是进行管理的,也就是它可以进行管理hibernate,那管理什么呢?怎样管理的呢?这些主要就是依靠config.xml文件了,这也是spring的配置文件,在web的WEB-INF下如下图选中的这一段,id=“myDataSource”..大家可以很轻松的看到里面有这里面正是和Oracle的连接,代码如下beanid=myDataSourceclass=org.apache.commons.dbcp.BasicDataSourcedestroy-method=closepropertyname=driverClassNamevalue=oracle.jdbc.driver.OracleDriver/propertyname=urlvalue=jdbc:oracle:thin:@localhost:1521:mis/propertyname=usernamevalue=scott/propertyname=passwordvalue=tiger/propertyname=maxActivevalue=10//bean选中的这一段,id=”sessionFactory”…大家可以很轻松的看到里面有这一段是session的建造工厂,里面建造的正是其映射的文件,如图代码是beanid=sessionFactoryclass=org.springframework.orm.hibernate3.LocalSessionFactoryBeanpropertyname=dataSourcereflocal=myDataSource//propertypropertyname=mappingResourceslistvaluecom/rw/pojo/Userinfo.hbm.xml/value/list/propertypropertyname=hibernatePropertiespropspropkey=hibernate.dialectorg.hibernate.dialect.Oracle9Dialect/prop/props/property/bean注意:valuecom/rw/pojo/Userinfo.hbm.xml/value这个正是com.rw.pojo包下的User.hbm.xml文件propkey=hibernate.dialectorg.hibernate.dialect.Oracle9Dialect/proporg.hibernate.dialect.Oracle9Dialect是Oracle的“方言”选中的这二段,大家可以很轻松的看到里面有这二段是:连接具体的dao即com.rw.dao下的文件和开启事物处理,如图代码是:beanid=userDAOTargetclass=com.rw.dao.UserDAOpropertyname=sessionFactoryreflocal=sessionFactory//property/beanbeanid=transactionManagerclass=org.springframework.orm.hibernate3.HibernateTransactionManagerpropertyname=sessionFactoryrefbean=sessionFactory//property/bean注意:class=com.rw.dao.UserDAO..这个就是连接com.rw.dao下UserDAO选中的这一段,就是将id=”UserDAO”这个具体文件进行事物管理,和数据库进行数据的交互。如图代码是:beanid
本文标题:struts1.2+hibernate3.1+spring2.0
链接地址:https://www.777doc.com/doc-5946073 .html