美文网首页
Spring基础知识 day04 Spring中的JdbcT

Spring基础知识 day04 Spring中的JdbcT

作者: 小陈工 | 来源:发表于2022-05-04 18:46 被阅读0次

一、Spring 中的 JdbcTemplate

1.1 JdbcTemplate 概述:

它是 spring 框架中提供的一个对象,是对原始 Jdbc API 对象的简单封装。spring 框架为我们提供了很多的操作模板类。 

操作关系型数据的: 

            JdbcTemplate 

            HibernateTemplate 

操作 nosql 数据库的: 

            RedisTemplate 

操作消息队列的: 

            JmsTemplate 

1.2 JdbcTemplate 对象的创建:

1.3 spring 中配置数据源

1.3.1 环境搭建

1.3.2 编写 spring 的配置文件

1.3.3 配置数据源

1.3.3.1 配置 C3P0 数据源:

1.3.3.2 配置 DBCP 数据源

1.3.3.3 配置 spring 内置数据源

1.4JdbcTemplate 的增删改查操作

1.4.1 前期准备:

1.4.2 在 spring 配置文件中配置 JdbcTemplate

1.4.3 最基本使用

1.4.4 保存操作

1.4.5 更新操作

1.4.6 删除操作

1.4.7 查询所有操作

1.4.8 查询一个操作

1.5 在 dao 中使用 JdbcTemplate

1.5.1 准备实体类

1.5.2 让 dao 继承 JdbcDaoSupport:

JdbcDaoSupport 是 spring 框架为我们提供的一个类,该类中定义了一个 JdbcTemplate 对象,我们可以直接获取使用,但是要想创建该对象,需要为其提供一个数据源,具体源码如下:

1.5.3 让 Dao 继承 JdbcDaoSupport 的方式能有效的减少重复代码的出现

二、Spring 中的事务控制

2.1  关于Spring 事务控制我们要明确的

第一:JavaEE 体系进行分层开发,事务处理位于业务层,Spring 提供了分层设计业务层的事务处理解决方案。 

第二:spring 框架为我们提供了一组事务控制的接口。具体在后面介绍。这组接口是在 spring-tx-5.0.2.RELEASE.jar 中定义的。 

第三:spring 的事务控制都是基于 AOP 的,它既可以使用编程的方式实现,也可以使用配置的方式实现。我 们学习的重点是使用配置的方式实现。

2.2 Spring 中事务控制的 API 介绍

2.2.1 PlatformTransactionManager:此接口是 spring 的事务管理器,它里面提供了我们常用的操作事务的方法

我们在开发中都是使用它的实现类,如下图:

2.2.2 TransactionDefinition:它是事务的定义信息对象,里面有如下方法

2.2.2.1 事务的隔离级别:

2.2.2.2 事务的传播行为

2.2.2.3 超时时间:默认值是-1,没有超时限制。如果有,以秒为单位进行设置。

2.2.2.4 是否是只读事务:建议查询时设置为只读。

2.2.3 TransactionStatus:此接口提供的是事务具体的运行状态,方法介绍如下图:

2.3 基于XML的声明式事务控制(配置方式)

2.3.1 环境搭建 

2.3.1.1 第一步:拷贝必要的 jar 包到工程的 lib 目录

2.3.1.2 第二步:创建 spring 的配置文件并导入约束

2.3.1.3 第三步:准备数据库表和实体类

2.3.1.4 第四步:编写业务层接口和实现类

2.3.1.5 第五步:编写 Dao 接口和实现类

2.3.1.6 第六步:在配置文件中配置业务层和持久层对象

2.3.2 配置步骤

2.3.2.1 第一步:配置事务管理器

2.3.2.2 第二步:配置事务的通知引用事务管理器

2.3.2.3 第三步:配置事务的属性

2.3.2.4 第四步:配置 AOP 切入点表达式

2.3.2.5 第五步:配置切入点表达式和事务通知的对应关系

三、Spring5 的新特性

3.1与 JDK 相关的升级

3.1.1 jdk 版本要求: 

        spring5.0 在 2017 年 9 月发布了它的 GA(通用)版本。该版本是基于 jdk8 编写的,所以 jdk8 以下版本 将无法使用。同时,可以兼容 jdk9 版本。

        tomcat 版本要求 8.5 及以上。 

        注: 我们使用 jdk8 构建工程,可以降版编译。但是不能使用 jdk8 以下版本构建工程。 由于 jdk 和 tomcat 版本的更新,我们的 IDE 也需要同时更新。(目前使用的 eclipse 4.7.2)

3.1.2 利用 jdk8 版本更新的内容

第一:基于 JDK8 的反射增强

第二:@NonNull 注解和@Nullable 注解的使用:

        用 @Nullable 和 @NotNull 注解来显示表明可为空的参数和以及返回值。这样就可以在编译的时候处理空值而不是在运行时抛出 NullPointerExceptions。 

第三:日志记录方面 

        Spring Framework 5.0 带来了 Commons Logging 桥接模块的封装, 它被叫做 spring-jcl 而 不是标准的 Commons Logging。当然,无需任何额外的桥接,新版本也会对 Log4j 2.x, SLF4J, JUL ( java.util.logging) 进行自动检测。

3.2核心容器的更新

3.3JetBrains Kotlin 语言支持

3.4响应式编程风格

3.5Junit5 支持

3.6依赖类库的更新

相关文章

网友评论

      本文标题:Spring基础知识 day04 Spring中的JdbcT

      本文链接:https://www.haomeiwen.com/subject/zckgyrtx.html