JdbcTemplate(Spring学习笔记)

JdbcTemplate实现数据库增删改查

1.引入.jar包;
spring-jdbc-5.2.6.RELEASE.jar
spring-orm-5.2.6.RELEASE.jar
spring-tx-5.2.6.RELEASE.jar
mysql-connector-java-5.1.7-bin.jar

2.spring配置文件中配置数据库连接池
在这里插入图片描述
3.配置JdbcTemplate对象,注入DataSource
在这里插入图片描述
4.创建service类,dao类,在dao类注入jdbcTemplate模板对象
在这里插入图片描述
在这里插入图片描述
使用JdbcTmplate中的update()方法:
在这里插入图片描述
在这里插入图片描述

返回值update代表加了几条数据
修改:
在这里插入图片描述
删除:
在这里插入图片描述
查询:

  • 返回值:
    在这里插入图片描述
  • 返回对象:
    在这里插入图片描述* 返回集合:
    在这里插入图片描述

批量操作

  • 批量添加:
    在这里插入图片描述
    在这里插入图片描述
  • 批量修改
    在这里插入图片描述
  • 批量删除:
    在这里插入图片描述

事务

1.定义:一组同时成功或失败的操作。
2.事务特性:ACID(原子,一致,隔离,持久)
java结构
在这里插入图片描述
1.创建一个表:
在这里插入图片描述
在这里插入图片描述
xml文件:
和前面一样,开启组件扫描—>创建DataSource—>创建JdbcTemplate并把DataSource属性注入。
Service:
在这里插入图片描述
UserDao接口:
在这里插入图片描述

UserDaoImpl类:
在这里插入图片描述

测试方法:
在这里插入图片描述

  • 事务一般添加到JAVAEE中的Service层中

编程式事务管理和声明式事务管理(常用)。
在这里插入图片描述
注解常用,Spring事务管理底层使用AOP

  • 事务设计的基本思路:
    在这里插入图片描述
    Spring针对不同框架提供不同接口,顶层接口PlatformTransactionManeger:
    在这里插入图片描述
    声明式:
    (1)spring配置文件中配置事务管理器(DataSourceTransactionManeger)
    在这里插入图片描述
    (2)开启事务注解:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    (3)在类或者方法上添加注解:
    • @Transaction(类上说明所有方法都填加,方法只表示该方法有注解)
    • 参数配置
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
  • (1)传播行为:
    A()中调用B():
    update:A有事务,B就在这个事务中,若没有,则创建事务。
    updatenew: A()有没有,调用B()时都要创建新的事务。
    在这里插入图片描述
  • (2)隔离级别:读未提交(脏读)、读已提交(不可重复读)、可重复读(幻读)、序列化
    在这里插入图片描述
  • (3)超时:一定时间不提交,自动回滚。(默认-1,不超时)
  • (4)是否只读(默认false)
  • (5)回滚:出现哪些异常进行回滚
  • (6)不回滚:出现哪些异常不回滚

2.基于xml方式的事务管理
(1)配置管理器
在这里插入图片描述
(2)配置通知
在这里插入图片描述
(3)配置切入点和切面
在这里插入图片描述
3.完全注解的事务操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试:
在这里插入图片描述

Spring5新特性

1.整个代码基于java8,运行时兼容JDK9.
2.自带日志封装。
(1)Spring5移除了Log4jConfigListener, 官方建议使用Log4j2。
(2)Spring5框架整合Log4j2
一、引入所需jar包:
在这里插入图片描述
二、创建log4j2.xml文件
(名字固定,内容固定)
在这里插入图片描述
优先级:越往右优先级越高,左侧都会显示
手动输出日志:
在这里插入图片描述
三、支持@Nullable注解
可用在方法(返回值可为空),属性,参数上,表示值可以为空。

四、支持函数式风格GenericApplicationContex
在这里插入图片描述
五、整合JUnit5
(1)整合Unit4

  • (1)引入依赖
  • (2)注解方式创建测试类
    在这里插入图片描述
    (2)整合JUnit5
    在这里插入图片描述
    在这里插入图片描述
  1. SpringWebflux介绍
    前置知识:
    在这里插入图片描述
    (1)Spring5添加的新模块,用于Web开发,功能和Spring MVC类似,使用响应式编程的框架。
    (2)传统的Web框架,如SpringMVC,都是基于Servlet容器,而Webflu是一种异步非阻塞框架,Servlet3.1以后才支持,核心是基于Reactor的相关API实现的。
    (3)特点:
    第一,非阻塞:有限资源下实现更大的吞吐量
    第二,函数式编程:基于java8函数式编程实现路由请求。
    (4)比较SpringMVC:
    在这里插入图片描述
    第一,两个框架都可以使用注解,都运行在Tomet容器中。
    第二,SpringWebflux 异步响应式编程,SpringMVC使用命令式编程。

  2. 响应式编程
    java8提供观察者模式,两个类Observe和Observable
    在这里插入图片描述
    在这里插入图片描述

  3. Webflux执行流程和核心API

  4. SpringWebflux(基于注解编程模型)

  5. SpringWebflux(基于函数式编程模型)

总结

1.Spring框架概述
在这里插入图片描述
2.IOC容器
在这里插入图片描述
3.AOP
在这里插入图片描述
4.JdbcTemplate
在这里插入图片描述
5.事务管理
在这里插入图片描述
6.Spring5新特性
这里没学明白,SpringWebflux听蒙了,先去补一补其他知识,回来再看:
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值