数据库事务、 web登录认证授权基础

本文详细介绍了数据库事务的概念、特性以及管理方法,重点讨论了Java中的事务处理。此外,文章还阐述了Web登录认证授权的基础,包括Cookie、Session、Token及JWT的工作原理和应用场景,对比了它们之间的区别与联系。
摘要由CSDN通过智能技术生成

1.数据库事务

概念:

数据库的事务是一种机制,一个操作序列,包含了一组数据库的操作命令;事务把所有的命令都作为一个整体一起向系统提交或撤销操作,即这一组数据库命令要么同事成功,要么同时失败;我们把事务看作是一个不可分割的工作逻辑单元;

事务管理关键字:

MySQL事务管理:

--开启事务 --START TRANSACTION 或者 BEGIN;

--提交事务 --COMMIT;

--回滚事务 --ROLLBACK;

JDBC事务管理:Connection接口定义了3个对应的方法:

--开启事务 :setAutoCommit(boolean) :true为自动提交事务;false为手动提交事务,即开启事务;

--提交事务 :commit();

--回滚事务 :rollback();

在java里面使用异常处理机制 try catch来进行事务运行管理的代码编写;

事务的四大特征:

原子性(Automicity):事务是不可分割的最小操作单位,要么同时成功,要么失败;

一致性(Consistency):事务完成时,必须使所有的数据都保持一致状态(数据总额不发生变化);

隔离性(Isolation):多个事务(多个操作窗口)之间,操作的可见性;隔离性越强,操作越不可见,性能越低,反之性能越高;

持久性(Durability):事务一旦提交或者回滚,它对数据库的改变就是永久的;

事务的默认自动提交:

我们知道在进行数据更改的时候,数据是会实时变更的,这是因为数据库默认就是自动提交数据的;

可以通过:select @@autocommit;语句来查询它的提交方式,默认的值是1;

可以通过:set @@autocommit = 0;语句来修改它的提交方式为手动,这样如果要永久性地修改数据,
就必须要手动提交;

在spring mvc模型里,在service层里通过加注解:@Transactional ,该注解可用于方法、实现类、接口上,被注解的方法需要声明在接口里面,因为该注解是基于动态代理实现的,就是在方法前后增加开启,提交事务的逻辑,而事物的回滚基于异常的捕捉

2.分清cookie,session,token

2.1、基础概念

Http是一种无状态的协议(对于事务处理没有记忆能力,服务端不会保存任何会话信息,如果想要跟踪会话,需要主动维护一个信息去保留会话信息,这个信息可以是cookie或者session)

现在上网想要对服务器发送请求一般都要进行登录操作,而登录操作以及后续请求是基于认证、授权与凭证这

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值