文档章节

Spring框架学习笔记(四)

o
 osc_z1hvg4cu
发布于 2018/04/25 22:26
字数 1748
阅读 12
收藏 0

精选30+云产品,助力企业轻松上云!>>>

上接Spring框架学习笔记(三)

声明式事务管理(xml配置)

1 配置文件方式使用aop思想配置

第一步 配置事务管理器

第二步 配置事务增强

 

第三步 配置切面

 

 

声明式事务管理(注解)

第一步 配置事务管理器

 

第二步 配置事务注解

 

第三步 在要使用事务的方法所在类上面添加注解

 

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> T get(Class<T> entityClass, Serializable id) :根据id查询
  •  <T> T load(Class<T> 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

第八步 配置事务

整合其他方式

1 spring整合hibernate时候,可以不写hibernate核心配置文件

(1)把hibernate核心配置文件中,基本信息配置和映射引入都放到spring配置

 

Spring分模块开发

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

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

Spring框架到此暂时告一段落。

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
Java程序员必备的魔鬼文档,springboot核心资料,清晰!齐全!已跪!

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这...

wx5d6cccb1cb158
05/20
0
0
Java程序员必备的魔鬼文档,springboot核心资料,清晰!齐全!已跪!

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这...

wx5d6cccb1cb158
05/20
0
0
SpringBoot 学习笔记(一)

—本笔记内容为原创内容,转载需注明本人— 本人刚刚毕业没多久,在学校里学的是安卓开发,后来再找实习工作的时候呢,因为安卓开发岗位过于饱和,就转去做后台开发,自学了三个月的框后台框...

osc_mblu5qn4
2018/08/03
11
0
手写Spring框架学习笔记

以下是咕泡公开课的学习笔记 一、创建工程springdemo 二、在pom中配置servlet <dependency> 三、web.xml文件 <!DOCTYPE web-app PUBLIC"-//Sun Microsystems, Inc.//DTD Web Application 2.......

osc_6lgm3hxt
2018/11/21
0
0
[Spring+SpringMVC+Mybatis]框架学习笔记:前言_目录

下一章:[Spring+SpringMVC+Mybatis]框架学习笔记(一):SpringIOC概述 前言 本笔记用于记录本人(Steven)的SSM框架学习历程,仅用作学习、交流,不用于商业用途,侵权必究。 虽然现在流行...

osc_p3rdih8s
04/16
10
0

没有更多内容

加载失败,请刷新页面

加载更多

聊聊rocketmq-client-go的TraceInterceptor

序 本文主要研究一下rocketmq-client-go的TraceInterceptor TraceInterceptor rocketmq-client-go-v2.0.0/producer/interceptor.go // WithTrace support rocketmq trace: https://github.c......

go4it
19分钟前
0
0
如何在Android文本视图周围添加边框? - How do I put a border around an Android textview?

问题: 是否可以在textview周围绘制边框? 解决方案: 参考一: https://stackoom.com/question/EfXR/如何在Android文本视图周围添加边框 参考二: https://oldbug.net/q/EfXR/How-do-I-put...

法国红酒甜
34分钟前
10
0
设计模式(4) 建造者模式

什么是建造者模式 经典建造者模式的优缺点 对建造者模式的扩展 什么是建造者模式 建造者模式将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。创建者模式隐藏了...

zhixin9001
46分钟前
14
0
ArrayList源码分析 —— JDK8

ArrayList的特性 ArrayList内部使用数据作为存储结构,ArrayList可以理解为数组的扩展对象,封装了常用的和非常用的操作数组的方法。以及当数组长度不足以保存数组时,自动扩容数组,通常Arr...

XuePeng77
53分钟前
42
0
__slots__的用法? - Usage of __slots__?

问题: Python中__slots__的目的是什么-尤其是关于何时以及何时不使用它的目的? 解决方案: 参考一: https://stackoom.com/question/1ymu/slots-的用法 参考二: https://oldbug.net/q/1ym...

富含淀粉
今天
17
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部