分层与事务

10 篇文章 0 订阅

MVC思想:

  servlet-->缺点:生成html内容太麻烦
    jsp--->缺点:阅读起来不方便,维护比较困难
    jsp+javabean:
            jsp的model1:
                jsp:接受请求,展示数据
                javabean:和数据打交道(类似User类)
    jsp+javabean+servlet
            jsp的model2:
                jsp:展示数据
                javabean:和数据打交道
                servlet:接受请求,处理业务逻辑
            就是MVC思想的体现

MVC:

 就是将业务逻辑,代码,显示相分离的一种思想
    M:model 模型 作用:主要是封装数据,封装对数据的访问
    V:view  视图 作用:主要是用来展示数据 一般是jsp担任的
    C:ctrl  控制 作用:接受请求,找到相应的javabean完成业务逻辑

JAVA的三层架构(分层):

    web
        作用:
            展示数据 ----jsp
            -----servlet-------
            接受请求
            找到对应的service,调用方法 完成逻辑操作
            信息生成或者页面跳转
    service 业务层
        作用:
            完成业务操作
            调用dao
    dao(data access object 数据访问对象)
        作用:
            对数据库的curd操作
事务:
就是一件完整的事情,包含多个操作单元,这些操作要么全部成功,要么全部失败.
四大特性:原子性(基本单元不能再分,成功或者回滚到起点),隔离性(同一时间,同一数据只能被一个事务访问,比如转出没完成前是不能转入得),
一致性(事务最终不破坏完整性约束),可持久性(更新持久不能回滚)
 例如:转账
        包含转出操作和转入操作.
    mysql中的事务:
        mysql中事务默认是自动提交,一条sql语句就是一个事务.
        开启手动事务方式
            方式1:关闭自动事务.(了解)
                set autocommit = off;
            方式2:手动开启一个事务.(理解)
                start transaction;-- 开启一个事务
                commit;-- 事务提交
                rollback;-- 事务回滚
        扩展:
            oracle中事务默认是手动的,必须手动提交才可以.
        
        例如:创建数据库和表
            create database day13;
            use day13;
            create table account(
                name varchar(20),
                money int
            );
  
            insert into account values('aa','1000');
            insert into account values('bb','1000');
            
        完成 aa给bb转500;
            update account set money = money - 500 where name='aa';
            update account set money = money + 500 where name='bb';
     java中的事务:
Connection接口的api:★
            setAutoCommit(false);//手动开启事务
            commit():事务提交
            rollback():事务回滚
        
        扩展:了解 Savepoint还原点
            void rollback(Savepoint savepoint) :还原到那个还原点
            Savepoint setSavepoint() :设置还原点


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值