spring学习笔记4

Spring_day04

上节内容回顾

1 基于aspectj的注解aop操作

2 spring的jdbcTemplate操作
(1)实现crud操作

  • 添加、修改、删除update方法
  • 查询
    – 查询某个值 queryForObject
    – 查询对象queryForObject
    – 查询list query

3 spring配置连接池
(1)配置c3p0连接池
(2)dao注入jdbcTemplate

4 spring事务管理
(1)事务概念
(2)spring进行事务管理api
(3)spring进行事务配置

  • 基于xml配置文件
  • 基于注解方式

今天内容介绍

SSH三大框架整合
(1)struts2
(2)hibernate5.x
(3)spring4.x

回顾SSH框架知识点

Hibernate框架

1 hibernate核心配置文件

(0)orm思想
- 对象关系映射

(1)数据库信息
(2)hibernate信息
(3)映射配置

(4)hibernate核心配置文件
- 如果单纯使用hibernate框架,核心配置文件名称 hibernate.cfg.xml和位置 src下面 固定的
- hibernate和spring整合时候,hibernate核心配置文件名称和位置没有固定要求的

2 hibernate映射配置文件
(1)实体类和数据库表映射关系—使用orm思想

3 hibernate操作的步骤
(1)在spring框架对hibernate框架进行封装,使用hibernateTemplate
### Struts2框架
1 Action操作
(1)action创建三种方式
- 继承类 ActionSupport

(2)配置action访问路径
- 创建struts.xml配置文件,这个文件名称和位置固定 src下面的

(3)配置访问action的多个方法
- 使用通配符方式配置

(4)在action获取表单提交数据
- 获取request对象
** 使用ServletActionContext类获取
- 属性封装
- 模型驱动(重点)
- 表达式封装

(5)在action操作域对象
- 使用ServletActionContext获取域对象

(6)配置struts2的过滤器

2 值栈
(1)向值栈放数据
- set方法
- push方法
- 定义变量,生成get方法

(2)从值栈获取数据
- 在jsp中使用struts2标签+ognl获取
- <s:property>
- <s:iterator>

3 拦截器
(1)aop和责任链模式
(2)自定义拦截器
- 继承MethodFilterInterceptor
- 重写类里面的方法
- 配置拦截器和action关联

Spring框架

1 spring核心配置文件
(1)名称和位置没有固定要求
(2)在spring核心配置文件中引入schema约束
 
2 创建对象
(1)xml配置方式:<bean  id=””  class=””  scope=””/>
(2)注解方式:四个注解

3 注入属性(对象类型属性)
(1)xml配置方式:
(2)注解方式:两个注解
- autowired
- resource

3 使用ServletContext对象和监听器实现
(1)在服务器启动时候,加载spring配置文件,创建对象
(2)配置spring的监听器
(3)指定spring配置文件位置

4 jdbcTemplate

5 spring事务配置
(1)xml方式
(2)注解方式

SSH框架整合思想

1 三大框架应用在javaee三层结构
在这里插入图片描述

2 struts2框架和spring整合
(1)struts2的action在spring配置
在这里插入图片描述

3 spring框架和hibernate框架整合
(1)hibernate的sessionFactory交给spring配置
(2)把hibernate数据库配置交给spring配置

在这里插入图片描述

整合struts2和spring框架

1 把struts2的action交给spring管理

2 实现过程
第一步 导入struts2的jar包
(1)导入用于整合的jar包
在这里插入图片描述

第二步 创建action

第三步 创建struts2核心配置文件,配置action
(1)位置在src下面,名称是struts.xml

第四步 配置struts2过滤器

第五步 导入spring的jar包

第六步 创建spring配置文件
(1) 引入约束
(2) 配置spring监听器
(3) 指定spring配置文件位置
在这里插入图片描述
在这里插入图片描述

第七步 把action交给spring进行配置(***)
在这里插入图片描述
在这里插入图片描述

(1)在spring配置action对象,在struts.xml中也配置action对象
(2)解决:
只需要在spring里面配置action对象,不要在struts.xml中配置

在这里插入图片描述

Spring框架整合hibernate框架

1 把hibernate核心配置文件中配置数据库信息,把数据库信息在spring进行配置

2 把hibernate里面的sessionFactory创建交给spring管理

具体实现

第一步 导入hibernate的jar包
(1)导入struts2和hibernate的jar包时候有jar冲突问题
在struts2里面有jar包
在这里插入图片描述

在hibernate里面有jar包
在这里插入图片描述

删除低版本的jar包
(2)导入spring整合持久化层框架需要导入jar包

在这里插入图片描述

第二步 搭建hibernate环境搭建
1 创建实体类
2 配置实体类映射关系
3 创建核心配置文件

第三步 把hibernate核心配置文件数据库配置,在spring进行配置
(1)把hibernate核心文件中数据库配置去掉了,在spring配置
在这里插入图片描述

第四步 把hibernate的sessionFactory交给spring配置
(1)服务器启动时候,加载spring配置文件,把配置文件中对象创建
(2)把sessionFactory对象创建在spring配置

(3)因为创建sessionFactory代码不是new出来的,而是多行代码实现的
在这里插入图片描述

(4)spring里面针对上面情况,封装类,配置类对象可以创建sessionFactory
在这里插入图片描述

第五步 在dao里面使用hibernateTemplate
在这里插入图片描述

(1)在dao得到hibernateTemplate的对象
在这里插入图片描述在这里插入图片描述

(2)调用hibernate模板里面save方法添加
在这里插入图片描述

没有配置事务,做操作时候,出现异常
在这里插入图片描述

第六步 配置事务

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

HibernateTemplate介绍

1 HibernateTemplate对hibernate框架进行封装,
直接调用HibernateTemplate里面的方法实现功能

2 HibernateTemplate常用的方法
• Serializable save(Object entity) :添加操作

• void update(Object entity) :修改操作

• void delete(Object entity) :删除操作

• T get(Class entityClass, Serializable id) :根据id查询
• T load(Class entityClass, Serializable id): 根据id查询
在这里插入图片描述

• List find(String queryString, Object… values) :查询操作的方法
在这里插入图片描述

(1)第一个参数是 hql语句
(2)语句参数值

在这里插入图片描述
在这里插入图片描述

SSH框架整合过程

第一步 导入jar包
在这里插入图片描述

第二步 搭建struts2环境
(1)创建action,创建struts.xml配置文件,配置action
(2)配置struts2的过滤器

第三步 搭建hibernate环境
(1)创建实体类
(2)配置实体类和数据库表映射关系
(3)创建hibernate核心配置文件

  • 引入映射配置文件

第四步 搭建spring环境
(1)创建spring核心配置文件
(2)让spring配置文件在服务器启动时候加载

  • 配置监听器
    在这里插入图片描述

  • 指定spring配置文件位置

在这里插入图片描述

第五步 struts2和spring整合
(1)把action在spring配置(action多实例的)
在这里插入图片描述

(2)在struts.xml中action标签class属性里面写 bean的id值
在这里插入图片描述

第六步 spring和hibernate整合
(1)把hibernate核心配置文件中数据库配置,在spring里面配置
在这里插入图片描述

(2)把hibernate的sessionFactory在spring配置
在这里插入图片描述

第七步 在dao里面使用hibernateTemplate
(1)在dao注入hibernateTemplate对象
(2)在hibernateTemplate对象中注入sessionFactory
在这里插入图片描述

第八步 配置事务

在这里插入图片描述在这里插入图片描述

出现异常时候,
第一行 异常信息
下面 cased by :

整合其他方式

1 spring整合hibernate时候,可以不写hibernate核心配置文件
(1)把hibernate核心配置文件中,基本信息配置和映射引入都放到spring配置

在这里插入图片描述

Spring分模块开发

1 在spring里面配置多个内容,造成配置混乱,不利用维护

2 把spring核心配置文件中,一部分配置放到单独的配置文件中,在spring核心配置文件中引入单独配置文件

在这里插入图片描述

问题:

1 在struts2里面和hibernate里面都有jar包
在这里插入图片描述在这里插入图片描述

Jar包冲突问题,删除其中的一个,删除低版本的jar包
2 如果把数据库信息配置在hibernate里面进行配置
(1)出现异常,事务里面找不到数据源了
(2)数据库配置在spring里面配置

SSH练习功能

1 客户管理
(1)crud操作

2 联系人管理
(1)配置一对多操作
(2)添加联系人

  • 选择所属客户
  • struts2实现文件上传
    (3)联系人列表
    (4)修改联系人

3 客户拜访管理
(1)多对多配置拆分成两个有对多实现

4 综合查询
(1)多条件组合查询

5 统计分析
(1)hibernateTemplate调用底层sql实现功能

6 其他知识
(1)svn版本控制工具使用
(2)代码重构

  • baseDao抽取
    (3)插件:jquery easyui
  • jquery ajax操作
  • json数据格式
    完成任务
    1 搭建ssh整合环境

2 复习知识
(1)jquery ajax操作
(2)json数据格式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值