1、3.0 Hibernate3.3 Struts2.1 4. DB:以MySQL 5.1为例。二、打开myEclipse先配置好Tomcat服务器和JDK操作好下图所示:1. Window - Preferences- Java:Installed JREs 在这里可以不使用myEclipse自带的JDK,得Add自己安装好的JDK: 2. Window - MyEclipse - Servers:Tomcat 6.x 在这里配置Tomcat服务器,我们这里是选择6.x。Browse自己将Tomcat解压放的目录,再选择Enable,将它启用,然后Apply应用一下就Ok了。3. Window
2、- Preferences:Tomcat 6.x JDK 选择前面我们配好的JDK版本。4. 现在我们来启动Tomcat服务器,打开内部的浏览器测试Tomcat有没有配置成功, 如下图所示:则表示Tomcat服务器配置成功。5. Window -PreferencesJavaBuildPath:UserLibraries在这里配置用户自己要用jar 包的Libraries。这一步可以到后面需要添加自己的jar 包时,再做也可以的。6. Window - Preferences - Java Build Path:在这里将自己上面配置好的Libraries添加到编译请求的路径里。三、创建好Web
3、项目,最先Add Spring如下图所示:1. 选择项目名,右击MyEclipse -Add Spring Capabilities 勾选好Spring3.0 的五个核心Libraries,注意将它们Copy到/WebRoot/WEB-INF/lib 目录下,再点击Next :完成后,项目中将会出现Spring添加的东西,有时候可能会出现不名的错误,现在暂时不需管它(推荐刷新项目),有些原因是因为Spring的Xml配置文件里引入的东西有冲突。四、创建数据源,切换到MyEclipse Database Explorer 窗口,如下图所示:在左边DB Browser的窗口里,右击选择New新建一
4、个数据源,出如下图所示的窗口:根据自己项目所建的数据库来选择配置,引入连接驱动JARs包。配好后,点击Test Driver来测试配置连接是否成功。下图所示则表示成功了,再进行下一步操作。 Schema Details选择连接映射的数据库,没必要将全部的数据库连接进来。配置好以后,然后选择它将它Open connection打开看一看,能否将数据连接过来:五、再将窗口切换回来,现在添加Hibernate 3.3 选择项目名,右击Add Hibernate Capabilities,这里可以选择支持 Annotations 注解方式来进行SSH的集成。注意将Library Copy到/WebRo
5、ot/WEB-INF/lib 目录下:在对话框中选择Springconfigurationfile,表示我们希望将Hibernate托管给Spring进行管理,这是将Hibernate与Spring进行整合的基础。然后点击Next:在出现的对话框中选择Existing Spring configuration file。因为我们已经添加了Spring的配置文件,所以这里选择的是已存在的配置文件。MyEclipse会自动找到存在的那个文件。然后在SessionFactoryID中输入Hibernate的SessionFactory在Spring配置文件中的BeanID的名字,这里我们输入sess
6、ionFactory即可。在出现的对话框中的Bean Id里面输入数据源在Spring中的Bean ID的名字,这里我们输入dataSource。然后在DBDriver里面选择我们刚刚配置好的ssh,MyEclipse会将其余的信息自动填写到表格里面。然后点击Next 5. 在出现的对话框中取消Create SessionFactory class。点击Finish即可。六、最后再Add Struts Capabilities:Struts2.1 1.选择Struts2.x 之后配置窗口会变成下图所示,导入Struts2.1 的Jars 不可选入到/WebRoot/WEB-INF/lib 目录
7、下。(以后我们再讲怎自己手动AddStruts整合) 下一步再根据自己的情况另勾选Struts集成的应用包,Finish 一下就好了。第二种:自己手动添加Struts整合:找到自己收录的Struts 2.x架包,手动将Jars Ctrl+C再Ctrl+V到/WebRoot/WEB-INF/lib 目录下,再将主要的xml配置文件struts.xml拷贝到/src/目录下即可。到这里,我们整个项目的框架就算初步成形了,下面我们可以到MyEclipse Java Enterprise视图下查看一下整个项目的结构,再进行后续操作。七、Hibernate Reverse Engineering反向生成
8、Pojo类,自动生成映射关系:再进入到MyEclipseDatabaseExplorer视图,全选中所有的表,右击选择Hibernate Reverse Engineering操作,如下图所示: Java src folder: 选项Browse到自己新建好的包下面,我这里是放到Model(或者DTO)层,如下图所示:再选择*.hbm.xml和POJO映射,注意我们不需选择:Create abstract class,再Next:下一步再选择Id Generator 的生成策略,我们选native,再点Next,如下图所示:接下来,默认选项,直接点击Finish完成这项操作,如下图所示:6.最
9、后回到MyEclipse Java Enterprise视图,查看是否已成功生成映射文件,如下图所示:到这里我们就将SSH整合的所有操作都做好了,接下来就是进行编码工作,修改相应的XML配置文件,最后到完成项目,发布web项目,启动web服务器,运行测试项目。祝君马到成功! * 八、添加在Web.xml文件里的配置:Spring和Struts集成的配置,加载Spring容器:(Struts.x的方式: servlet、plug-in):!- 配置FilterDispatcher过滤器,以便加Spring容器 -filterfilter-nameFilterDispatcherfilter-cl
10、ass org.apache.struts2.dispatcher.FilterDispatcher /filter-class/filterfilter-mappingurl-pattern/*/filter-mapping- 配置Spring容器:指定Spring文件的路径,让spring知道事务管理的bean所在-context-paramparam-namecontextConfigLocation- /WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xml-param-value/WEB-INF/app
11、licationContext.xml/context-param- 在Struts2感知下,Spring容器的加载 -listenerlistener-class org.springframework.web.context.ContextLoaderListener /listener-class/listener添加连接池的配置,这里以Proxool为例:- 添加读连接池配置文件的servlet节点 -servlet proxoolServletConfiguratorservlet-classorg.logicalcobwebs.proxool.configuration.Servl
12、etConfigurator /servlet-classinit-paramxmlFile/WEB-INF/ProxoolConf.xml- 由于proxool要先加载,所以启动优先级要比spring高,否则在spring加载时会报错 -load-on-startup0/servlet添加事务配置Hibernate使用Session的关闭与开启由spring 来管理,针对Hivernate懒加载;把一个Hibernate Session和一次完整的请求过程对应的线程相绑定:-配置 OpenSessionInViewFilter或OpenSessionInViewInterceptor -hi
13、bernateFiltersingleSessiontrue*.do(/*)Spring character encoding filter org.springframework.web.filter.CharacterEncodingFilter encodingGBKDWRServletorg.directwebremoting.servlet.DwrServlet debug2/dwr/*另外附加2.连接池配置DBCP、Proxool、C3P0、JNDI方式 1. 导入连接池Jar 包:Copy到/WEB-INF/lib 目录下; 修改好连接池的配置文件并将它Copy到/WEB-INF
14、/目录下。2. 在applicationContext.xml中改dataSource节点(后续会讲)。九、添加在Spring的applicationContext.xml文件里的配置:1. 连接池dataSource的配置:- 连接池 dataSource的配置 -bean id=dataSourceclass=org.springframework.jdbc.datasource.DriverManagerDataSourceproperty name=driverClassNamevalue=org.logicalcobwebs.proxool.ProxoolDriver/propert
15、yurl value=proxool.DBPool/beansessionFactoryorg.springframework.orm.hibernate3.LocalSessionFactoryBeanref bean= /hibernatePropertiespropsprop key=hibernate.dialect org.hibernate.dialect.SQLServerDialect /prop- Show SQL语句设置 -hibernate.show_sqlhibernate.format_sql/propsmappingResourceslistvaluecom/./D
16、TO/SysUser.hbm.xmlcom/./DTO/SysRole.hbm.xmlcom/./DTO/SysRight.hbm.xml2. 添加处理业务逻辑的Beans,可以是DAOImpl、_Interceptor、导入xml文件等:- 处理整个用户业务操作的DAO一个Bean -userDAO class=com.Java7Group4CRM.DAOImp.SysUserDAOImp ref=- 处理用户登录的Action -loginActioncom.*.Actions.LoginAction scope=prototypeuserDAo- 验证用户权限的全局拦截器 -action
17、2ActionInterceptorcom.*.interceptor.Action2ActionInterceptor3. 配置事务管理.相当于Spring AOP面向切面的配置:A.配置spring提供的事务管理的bean: HibernateTransactionManager对象. - spring提供的事务管理的bean -transactionManagerorg.springframework.orm.hibernate3.HibernateTransactionManagerB.配置spring提供的将事务管理作为切面的作用于目标对象的代理bean:TransactionPro
18、xyFactoryBean对象. - spring提供的 将事务管理 作为切面 作用于目标对象的代理 bean -proxyObjorg.springframework.transaction.interceptor.TransactionProxyFactoryBean abstract=true这是一个抽象类,只供类(target对象)继承 -transactionAttributes-下面是配置出管理事务对应的(Dao的)方法 -up*PROPAGATION_REQUIREDtarget-下面用匿名bean用作它本身的属性作为目标对象 -bean class=com.*.daoimp.AccountDaoImp- 导入其他模块的配置文件 -import resource=applicationContext_basd.xml/十、添加在Struts2.x中struts.xml文件的配置:1. 在主struts.xml配置文件里,可以引入其他模块的struts_*.xml文件和处理乱码的
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2