韩顺平spring笔记之ssh整合

上传人:mg****85 文档编号:34214483 上传时间:2018-02-22 格式:DOC 页数:8 大小:100KB
返回 下载 相关 举报
韩顺平spring笔记之ssh整合_第1页
第1页 / 共8页
韩顺平spring笔记之ssh整合_第2页
第2页 / 共8页
韩顺平spring笔记之ssh整合_第3页
第3页 / 共8页
韩顺平spring笔记之ssh整合_第4页
第4页 / 共8页
韩顺平spring笔记之ssh整合_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《韩顺平spring笔记之ssh整合》由会员分享,可在线阅读,更多相关《韩顺平spring笔记之ssh整合(8页珍藏版)》请在金锄头文库上搜索。

1、 ssh 整合ssh(struts+spring+hibernate) 三大框架配合使用来开发项目,是目前 java ee 最流行的开发方式,必须掌握.设计: 这我们通过一个实际的案例,来讲解 整合 , 我们使用一个雇员薪资管理系统(crud),每加入一个框架,我们就测试通过具体的步骤: 创建 web 项目 先搞定 spring 引入 spring 开发包 编写 applicationContext.xml 文件(或者 beans.xml),我们把该文件放在 src 目录下. 测试一下 spring 是否 ok-目前 spring 可以工作. 5min 加入 hibernate 开发包 因为我

2、们是 ssh,所以我们 hibernate 的核心,就被 spring 接管了.hibernate.cfg.xml 文件对象映射文件,SessionFactory 在 spring 的文件中配置即可. 在 applicationContext.xml 中配置数据源 配置 SessionFactory 对象cn/xxx/bean/Person.hbm.xml hibernate.dialect=org.hibernate.dialect.OracleDialecthibernate.hbm2ddl.auto=updatehibernate.show_sql=falsehibernate.form

3、at_sql=false 我们编写 domain 对象和映射文件 Employee.hbm.xml -测试 srping 和 hibernate 是否可以结合使用-ok 考虑分层11. 使用事务管理器来统一管理事务.12. 配置我们的 hibernate 二级缓存 ehcache / oscache hibernate.dialect=org.hibernate.dialect.OracleDialecthibernate.hbm2ddl.auto=updatehibernate.show_sql=falsehibernate.cache.use_second_level_cache=true

4、hibernate.cache.provider_class=org.hibernate.cache.EhCacheProviderhibernate.generate_statistics=true 12.1 添加二级开发包.12.2 将我们的 ehcache 的配置文件放到 src 目录12.3 证明二级缓存生效13 整合 struts13.1 引入 struts 开发包13.2 创建 struts-config.xml 方法 /WEB-INF 目录下 配置如下:13.3 在 web.xml 中配置我们的 strutsstrutsorg.apache.struts.action.Actio

5、nServletconfig/WEB-INF/struts-config.xml0struts*.do* 在 web.xml 中初始化我们的 spring 容器contextConfigLocationclasspath:beans.xmlorg.springframework.web.context.ContextLoaderListener14. 让 spring 接管我们的 struts(action 控件)14.1 在 struts-config.xml 文件中添加如下代码配置: 14.2 在 applicationcontext.xml 文件中配置我们的 action 路径14.3

6、这我们就可以通过 spring 容器来获取 action,和配置 action 的一些属性.14.4 通过使用 sping 来接管我们的 action,还有一个好处,可以解决 action 是单例的问题.通过在 applicationContext.xml 文件中配置属性 15. 解决中文乱码问题思路: 自己配置过滤器步骤: (1) 开发一个 Filter(2) 在 web.xml 中配置过滤器MyFiltercom.hsp.web.filter.MyFilterMyFilter/*思路 2:使用 spring 框架提供的处理中文乱码的过滤器encodingorg.springframewor

7、k.web.filter.CharacterEncodingFilterencodingUTF-8encoding/*对 ssh 整合的特别说明:1. spring 可以启用注解的方式来配置属性.1.1 重新这样配置 bean1.2 在 EmployeeService 的属性 sessionFactory 中添加一个注解 Resource1.3 在 applicationContext.xml 中启用注解1.4 测试-ok2. ssh 整合的时候,如何解决懒加载问题问题? 如果我们的雇员都属于一个部门Class Departmentprivate Integer id;private Stri

8、ng name;目前我们把测试数据作出了.具体问题?如果我们在 mainFrame.jsp 中要求显示该雇员所在部门的时候$loginuser.department.name 时候,懒加载问题出现:解决思路:1. 明确初始化在 session 还没有关闭时,访问一次 xxx.getXxx(),强制访问数据库。或者 Hibernate.initialize(xxx)2 在对象映射文件中 取消懒加载 上面方法问题是: 不管你在 jsp 中使不使用 部门的名称,它都有向数据库发出 select 请求.3. spring 专门提供了 opensessioninview 的方法来解决懒加载.需要在 we

9、b.xml 文件中添加如下配置:OpenSessionInViewFilterorg.springframework.orm.hibernate3.support.OpenSessionInViewFilterOpenSessionInViewFilter/*该方法可以有效的减少对数据库的查询,缺点是和数据保持的 session,时间延长了.上机练习,把后面的配置加入:自己完成添加雇员和显示雇员的任务(分页)修改雇员和删除雇员把 jquery 框架整合到我们的项目中.(测试.)考虑一下用户权限的问题,如果是普通用户.(假设基本为 3 是管理员)思考: 目前这个项目的代码复用性不好,我们需要重新

10、整理.通过在 web 层和业务层间增加了一套基础接口来提高代码的复用性.*后面我们还有对项目的优化,包括添加基础接口,基础抽象类. HiberantUtil(分页简单.)为了大家能够更好的学习 ssh,我们决定开发一个大型项目(校内网 sns 系统 社会化网络系统 38 表)开发 ssh 流程domain-hibernate.hbm2ddl.auto=update-自动创建表关系模型- -逆向工程对象模型 (大一点项目,表-domain)表-逆向工程 -对象模型现在过渡一下.写一个浏览本(关系模型-)对象模型) ,如果前面没有搞清楚 ssh 流程的同学,这次好好地听(换成 mysql 开发)s

11、truts-config.xml 的设计工具来编写 action/actionfrom/jsp. 开发内部评论表(1) 需求uml 图删删删删删删 删删(2) 设计表type 表(类型表)create table type(id int primary key auto_increment,type varchar(64);content 表create table content(id int primary key auto_increment,name varchar(64) not null,sex char(2) not null, content varchar(2000), ty

12、peid int references type(id); mysql 的外键不能简单的使用 typeid int references type(id),而应该使用如下方法;create table content(id int primary key auto_increment,name varchar(64) not null,sex char(2) not null, content varchar(2000), typeid int, foreign key(typeid) references type(id);(3) 建立项目 publicbbs(4) 加入 spring 的

13、jar 包(5) 创建 beans.xml 文件,放在 src 目录下(6) 引入 hibernate(因为后面我们要使用 hibernate 逆向工程,因此步骤有所变化)6.1 使用 db broswer 来连接我们的 mysql6.2 引入 hibernate 的 jar 包(7) 配置 beans.xml7.1 配置数据源7.2 配置 SessionFactory7.3 配置事务管理器(8)使用 hibernate 的逆向工程,生成 domain 对象(9)测试看看能否添加信息 Type (hibernate 和 spring 整合 ok)(10) .配置 hibernate 的二级缓存

14、10.1 配置文件10.2 把二级缓存的 jar 包,和二级缓存的配置文件放在适当的位置10.3 在需要的 domain 对象上,启用二级缓存10.4 测试 ok(11) 引入 struts 包( 因为我们要使用 struts 的可视化工具来开发项目,因此,我们这里要通过工具导入 struts 框架),如果 struts 的版本你不满意,可以通过重新导入你要的包,来解决这个问题 初步测试 ok (12) 把 spring 容器的初始化工作交给 web.xml(13) 在 struts-config.xml 文件中配置代理请求处理器(14) 使用 spring 提供的过滤器,处理中文乱码( 在 web.xml 文件中配置)(15) 在 web.xml 文件中配置 opensessioninview(16) 把 ssh 整合,测试一下(添加一个 type)测试一把!(17) 画出框架图

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号