Mybatis配置insert时,插入数据失败
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,错误代码如下:@Test public void testInsertOne(){ SqlSession sqlSession = MyBatisUtils.getSession(
千家信息网最后更新 2025年12月02日Mybatis配置insert时,插入数据失败
错误代码如下:
@Test public void testInsertOne(){ SqlSession sqlSession = MyBatisUtils.getSession(); UserInfo userInfo = new UserInfo(); userInfo.setNickname("sunny"); userInfo.setPhoneNum("18936896033"); sqlSession.insert("insertUser", userInfo); LOG.log(Level.INFO, "userId:"+userInfo.getId()); sqlSession.close(); }原因是会话没有被提交而是被回滚了,修改代码如下:
@Test public void testInsertOne(){ SqlSession sqlSession = MyBatisUtils.getSession(); UserInfo userInfo = new UserInfo(); userInfo.setNickname("sunny"); userInfo.setPhoneNum("18936896033"); sqlSession.insert("insertUser", userInfo); sqlSession.commit(); //注意提交事物 LOG.log(Level.INFO, "userId:"+userInfo.getId()); sqlSession.close(); }源码解读:首先看看openSession的几种方式:
SqlSession openSession()SqlSession openSession(boolean autoCommit)SqlSession openSession(Connection connection)SqlSession openSession(TransactionIsolationLevel level)SqlSession openSession(ExecutorType execType,TransactionIsolationLevel level)SqlSession openSession(ExecutorType execType)SqlSession openSession(ExecutorType execType, boolean autoCommit)SqlSession openSession(ExecutorType execType, Connection connection)
从地一个和第二个就可看出区别:
openSession()会创建一个事物,但是不会自动提交
openSession(true)会创建一个事物,并自动提交
openSession(Connection connection),不使用数据元配置,而是自定义的一个链接
openSession(TransactionIsolationLevel level)事物的隔离级别:
(NONE,READ_UNCOMMITTED,READ_COMMITTED,REPEA TABLE_READ,SERIALIZA BLE)
openSession(ExecutorType execType):
ExecutorType.SIMPLE: 这个执行器类型不做特殊的事情。它为每个语句的执行创建一个新的预处理语句。
ExecutorType.REUSE: 这个执行器类型会复用预处理语句。
ExecutorType.BATCH: 这个执行器会批量执行所有更新语句,如果 SELECT 在它们中间执行还会标定它们是 必须的,来保证一个简单并易于理解的行为。
事物
语句
执行器
代码
会创
类型
而是
预处理
数据
特殊
事情
会标
元配
原因
方式
源码
级别
行为
链接
错误
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
效果好的软件开发外包
引导增强网络安全
籽岷我的世界服务器
网络安全保险张松海
浙江软件开发设施创意
国家网络安全审查室
成都云车酷互联网科技
合肥科怡软件开发
医院服务器维护
我的世界基岩版混合服务器
南充软件开发工作室
自贡蜻蜓互联网科技有限公司
携号转网的网络技术实现
王者荣耀服务器有优先体验服吗
加强网络安全工作的方案
江苏小型软件开发价格多少
网络安全全扫描的优缺点
浙江通用软件开发价格走势
小学网络安全宣传周动员讲话
山东服务器散热器定做
私募基金 数据库
关于国家安全网络安全的想法
株洲市网络安全信息通报中心
制作动漫网络安全
国内镜像服务器
网络数据库课程设计购物车程序
唐山软件开发销售电话
powerpc服务器
大连软件开发哪个公司待遇好
网络安全企业龙头股