首页 > 代码库 > 工作笔记3.手把手教你搭建SSH(struts2+hibernate+spring)环境
工作笔记3.手把手教你搭建SSH(struts2+hibernate+spring)环境
上文中我们介绍《工作笔记2.软件开发常用工具》
从今天开始本文将教大家如何进行开发?本文以搭建SSH(struts2+hibernate+spring)框架为例,共分为3步:
1)3个独立配置:struts2、 Hibernate、 Spring
2)2个整合:整合Sring和struts2、 整合Spring和Hibernate
3)资源分类
开发包、软件、框架源码,已经共享到百度网盘:http://pan.baidu.com/s/1o6FkbA6
一、3个独立配置
1、Struts2:
1.1jar包
拷贝此路径下的所有jar包,并放置在WebRoot/WEB-INF/lib中,路径:
Struts2开发包__struts-2.1.8.1-all\struts-2.1.8.1\apps\struts2-blank-2.1.8.1\WEB-INF\lib所有包
1.2拷贝配置文件
1.2.1struts.xml
拷贝已有struts.xml文件,并放置在config中,路径:struts2-blank-2.1.8.1\WEB-INF\src\java或:struts2-blank-2.1.8.1\WEB-INF\classes
1.2.2web.xml,核心过滤器
拷贝下图中红色框部分至web.xml中
1.3修改struts.xml文件
在struts.xml中添加下图中红色框部分代码
2.Hibernate
2.1jar包
拷贝此路径下的所有jar包,并放置在WebRoot/WEB-INF/lib中:
核心包1个:hibernate3.jar,路径:hibernate-distribution-3.6.0.Final
依赖包6个:requested,路径:\hibernate-distribution-3.6.0.Final\lib\required中所有。
Jpa1个:hibernate-jpa-2.0-api-1.0.0.Final.jar,路径:hibernate-distribution-3.6.0.Final\lib\jpa
数据库连接池1个,c3p0-0.9.1.jar,路径:hibernate-distribution-3.6.0.Final\lib\optional\c3p0
数据库驱动jdbc:mysql-connector-java-5.1.7
2.2配置文件
2.1.1主配置文件,hibernate.cfg.xml
2.1.2日志文件,Log4j.properties
2.1.3映射文件,*.hbm.xml,与实体相关
2.3修改hibernate配置文件
修改:hibernate.cfg.xml,添加如下配置信息:
数据库连接信息
其他配置:自动建表、显示sql语句、配置二级缓存
导入映射文件
3.Spring
3.1jar包-5
拷贝此路径下的所有jar包,并放置在WebRoot/WEB-INF/lib中,路径:
核心包:spring.jar
依赖包,AOP相关3。原理:动态代理+cglib子类方式代理
Aspect:aspectjrt.jar、aspectjweaver.jar
Cglib:cglib-nodep-2.1_3.jar
日志,commons-logging.jar
3.2配置文件
修改applicationContext.xml或Beans.xml配置文件
注解方式
二、2个整合
4.整合spring和struts,目的:Action交由spring管理
4.1整合目的:
原来:通过反射,生成实例
现在:从spring容器中拿对象
4.2jar包
Struts2-spring-plugin-2.1.8.1,jar
4.3配置文件
配置文件:配置spring用于初始化容器对象的监听器
路径:Spring开发包__spring-framework-2.5.6.SEC01-with-dependencies\spring-framework-2.5.6.SEC01\docs\reference\html_single---15.2
5.整合spring和Hibernate
5.1整合目的
管理SessionFactory实例(只需要一个)
声明式事务管理(xml/注解)
5.2步骤:
1、首先在applicationContext.xml中标注
2、新建实例User.java
3、建立对应的“实体映射类”User.hbm.xml
4、把User.hbm.xml,拖拽到hibernate.cfg.xml中
5.3执行JUnit后,自动建表
三、资源分类
源码文件夹是classpath的根目录
WebRoot/WEB-INF文件夹不能直接访问,需要经过Action携带信息
开发的时候,可以进行分类,但是实际输出的是一个目录
总结:
工作笔记3.手把手教你搭建SSH(struts2+hibernate+spring)环境