一、准备工作:myEclipse 整合 SSH 步骤(基于操作和配置文件)1. JDK -> jdk1.6.0_17 安装(环境变量配置):JAVA_HOME = C:\ jdk1.6.0_17;PATH = %JAVA_HOME%\bin; %JAVA_HOME%\jre\bin;CLA SSPATH = .;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;在 Cmd -> java –version 查看 JDK 的版本是否与刚配好的版本一致。
2. apache-tomcat-6.0.24:解压即可;3. myEclipse 8.5:安装(略):最高可提供:框架:Java EE 5Spring 3.0Hibernate 3.3Struts 2.14. DB :以 MySQL5.1 为例。
二、打开 myEclipse 先配置好 Tomcat 服务器和 JDK 操作好下图所示:1. Window -> Preferences -> Java: Installed JREs在这里可以不使用 myEclipse 自带的 JDK ,得 Add…自己安装好的 JDK :2. Window -> Preferences -> MyEclipse -> Servers: Tomcat 6.x在这里配置 Tomcat 服务器,我们这里是选择 6.x 。
Browse…自己将 Tomcat 解压放的目录,再选择 Enable ,将它启用,然后 Apply 应用一下就 Ok 了。
3. Window -> Preferences: Tomcat 6.x -> JDK 选择前面我们配好的JDK 版本。
4. 现在我们来启动Tomcat 服务器,打开内部的浏览器测试Tomcat 有没有配置成功,如下图所示:则表示Tomcat 服务器配置成功。
5. Window -> Preferences -> Java -> Build Path: User Libraries 在这里配置用户自己要用jar 包的Libraries。
说明> 这一步可以到后面需要添加自己的jar 包时,再做也可以的。
<6. Window -> Preferences -> Java Build Path:在这里将自己上面配置好的Libraries 添加到编译请求的路径里。
说明> 这一步可以到后面需要添加自己的jar 包时,再做也可以的。
<三、创建好Web项目,最先Add Spring如下图所示:1. 选择项目名,右击->MyEclipse ->Add Spring Capabilities…2. 勾选好Spring3.0 的五个核心Libraries,注意将它们Copy 到/WebRoot/WEB-INF/lib 目录下,再点击Next >:3. 完成后,项目中将会出现Spring 添加的东西,有时候可能会出现不名的错误,现在暂时不需管它推荐刷新项目),有些原因是因为Spring 的Xml 配置文件里引入的东西有冲突。
(四、创建数据源,切换到MyEclipse Database Explorer 窗口,如下图所示:1. 在左边DB Browser 的窗口里,右击选择New…新建一个数据源,出如下图所示的窗口:根据自己项目所建的数据库来选择配置,引入连接驱动JARs 包。
2. 配好后,点击Test Driver 来测试配置连接是否成功。
下图所示则表示成功了,再进行下一步操作。
3. Schema Details 选择连接映射的数据库,没必要将全部的数据库连接进来。
4. 配置好以后,然后选择它将它Open connection…打开看一看,能否将数据连接过来:五、再将窗口切换回来,现在添加Hibernate3.31. 选择项目名,右击->MyEclipse ->Add Hibernate Capabilities…,这里可以选择支持Annotations 注解方式来进行SSH 的集成。
注意将Library Copy 到/WebRoot/WEB-INF/lib 目录下:2. 在对话框中选择Spring configuration file,表示我们希望将Hibernate 托管给Spring 进行管理,这是将Hibernate 与Spring 进行整合的基础。
然后点击Next:3. 在出现的对话框中选择Existing Spring configuration file。
因为我们已经添加了Spring 的配置文件,所以这里选择的是已存在的配置文件。
MyEclipse 会自动找到存在的那个文件。
然后在SessionFactory ID 中输入Hibernate 的SessionFactory 在Spring 配置文件中的Bean ID 的名字,这里我们输入sessionFactory 即可。
然后点击Next:4. 在出现的对话框中的Bean Id 里面输入数据源在Spring 中的Bean ID 的名字,这里我们输入dataSource。
然后在DB Driver 里面选择我们刚刚配置好的ssh,MyEclipse 会将其余的信息自动填写到表格里面。
然后点击Next5. 在出现的对话框中取消Create SessionFactory class。
点击Finish 即可。
六、最后再Add Struts Capabilities:Struts2.11. 选择Struts2.x 之后配置窗口会变成下图所示,导入Struts2.1 的Jars 不可选入到/WebRoot/WEB-INF/lib 目录下。
(以后我们再讲怎自己手动Add Struts 整合)2. 下一步再根据自己的情况另勾选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反向生成Pojo类,自动生成映射关系:1. 再进入到MyEclipse Database Explorer 视图,全选中所有的表,右击选择Hibernate Reverse Engineering…操作,如下图所示:2. Java src folder: 选项Browse…到自己新建好的包下面,我这里是放到Model(或者DTO)层,如下图所示:3. 再选择*.hbm.xml 和POJO 映射,注意我们不需选择:□Create abstract class,再Next:4. 下一步再选择Id Generator 的生成策略,我们选native,再点Next>,如下图所示:5. 接下来,默认选项,直接点击Finish 完成这项操作,如下图所示:6. 最后回到MyEclipse Java Enterprise 视图,查看是否已成功生成映射文件,如下图所示:到这里我们就将SSH 整合的所有操作都做好了,接下来就是进行编码工作,修改相应的XML 配置文件,最后到完成项目,发布web 项目,启动web 服务器,运行测试项目。
祝君马到成功!~*******************************************************************************八、添加在Web.xml文件里的配置:1. Spring 和Struts 集成的配置,加载Spring容器:(Struts.x 的方式: servlet、plug-in):<!-- 配置FilterDispatcher过滤器,以便加Spring容器--><filter><filter-name>FilterDispatcher</filter-name><filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class></filter><filter-mapping><filter-name>FilterDispatcher</filter-name><url-pattern>/*</url-pattern></filter-mapping><!-- 配置Spring容器:指定Spring文件的路径,让spring知道事务管理的bean所在--><context-param><param-name>contextConfigLocation</param-name><!-- /WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xml--><param-value>/WEB-INF/applicationContext.xml</param-value></context-param><!-- 在Struts2感知下,Spring容器的加载--><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener>2. 添加连接池的配置,这里以Proxool 为例:<!-- 添加读连接池配置文件的servlet节点--><servlet><servlet-name>proxoolServletConfigurator</servlet-name><servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class><init-param><param-name>xmlFile</param-name><param-value>/WEB-INF/ProxoolConf.xml</param-value></init-param><!-- 由于proxool要先加载,所以启动优先级要比spring高,否则在spring加载时会报错--><load-on-startup>0</load-on-startup></servlet>3. 添加事务配置Hibernate 使用Session 的关闭与开启由spring 来管理,针对Hivernate 懒加载;把一个Hibernate Session 和一次完整的请求过程对应的线程相绑定:<!--配置OpenSessionInViewFilter或OpenSessionInViewInterceptor --><filter><filter-name>hibernateFilter</filter-name><filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter </filter-class><!-- singleSession默认为true,若设为false则等于没用OpenSessionInView --><init-param><param-name>singleSession</param-name><param-value>true</param-value><init-param></filter><filter-mapping><filter-name>hibernateFilter</filter-name><url-pattern>*.do(/*)</url-pattern></filter-mapping>4. 添加字符编码过滤器:<!-- Character Encoding 配置--><filter><filter-name>Spring character encoding filter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter </filter-class><init-param><param-name>encoding</param-name><param-value>GBK</param-value></init-param></filter><filter-mapping><filter-name>Spring character encoding filter</filter-name><url-pattern>/*</url-pattern></filter-mapping>5. 引入DWR 框架,做Ajax 应用:<!-- 引入DWR框架--><servlet><servlet-name>DWRServlet</servlet-name><servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class><init-param><param-name>debug</param-name><param-value>true</param-value></init-param><load-on-startup>2</load-on-startup></servlet><servlet-mapping><servlet-name>DWRServlet</servlet-name><url-pattern>/dwr/*</url-pattern></servlet-mapping>另外附加2.连接池配置:DBCP、Proxool、C3P0、JNDI方式1. 导入连接池Jar 包:Copy 到~/WEB-INF/lib 目录下;修改好连接池的配置文件并将它Copy 到~/WEB-INF/目录下。