【javaWeb】第45天——jdbc案例(简单的curd&分页)

回顾:
mvc
jsp的设计模式1:
jsp+javabean
jsp的设计模式2:
jsp+javabean+servlet
jsp:展示数据
javabean:封装数据 封装对数据的访问
servlet:处理请求
mvc:
将业务逻辑 代码 显示相分离
M:model 模型 封装数据 封装对数据的访问
V:view 视图 展示数据 目前由jsp担任
C:controller 控制 处理请求
三层架构:
web:
作用:
展示数据

            接受请求
            调用service
            页面的跳转,信息的生成
    service:
        作用:
            处理逻辑
            调用dao

    dao:
        作用:
            对数据库的curd操作
/
反射:
    先获取class对象,无所不能
    

事务:
一件完整的事情.可以包含多个操作,操作要么成功,要么全部失败
mysql中的事务:
默认是事务自动提交
手动提交:
1.关闭自动提交
2.手动开启一个事务
start transaction;
commit;
rollback;
java中的事务:
Connection接口的api
setAutoCommit(false):手动的开启一个事务
commit():提交
rollback():回滚
DBUitls使用事务:
1.创建QueryRunner
new QueryRunner():手动事务 调用他的方法的时候必须手动传入一个连接,连接得手动关闭,事务得手动控制.
new QueryRunner(DataSource ds):自动事务 调用他的方法的时候不需要传入一个连接,连接自动关闭,事务自动控制.
2.使用的方法 (手动事务)
query(…)
update(Connection conn …..)
事务中要想保证在一个事务中,必须保证使用同一个连接
方式1:向下传递连接
方式2:将连接和当前线程绑定
ThreadLocal
常用的方法:
set(Object value)
Object get()
remove()
事务的特性:
ACID
原子性 一致性 隔离性 持久性
若不考虑隔离性的时候会发生的问题
脏读
不可重复读
虚读
隔离级别:
read uncommitted:读未提交 什么问题都避免不了
read committed:读已提交 避免脏读
repeatable read:可重复读 避免脏读和不可重复读
serializable:串行化 避免所有的问题 锁表
安全:
serializable>repeatable read>read committed>read uncommitted
效率
serializable

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值