国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

mybatis中insert返回值為1,但數(shù)據(jù)庫(kù)卻沒(méi)有數(shù)據(jù)

瀏覽:4日期:2023-10-22 08:39:05

今天在利用Mybatis框架進(jìn)行數(shù)據(jù)庫(kù)插入時(shí),遇到了好幾個(gè)超級(jí)奇怪的問(wèn)題,也可能是我真的太菜雞了。做個(gè)記錄吧~

1. 排除數(shù)據(jù)庫(kù)中表設(shè)置錯(cuò)誤

使用show variables like ’%autocommit%’;查看表是否設(shè)置自動(dòng)提交

mybatis中insert返回值為1,但數(shù)據(jù)庫(kù)卻沒(méi)有數(shù)據(jù)

autocommit已經(jīng)設(shè)置為on,無(wú)問(wèn)題

2. 檢查測(cè)試類(lèi)代碼

Test.java

import entity.Data;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.RowBounds;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import java.io.InputStream;import java.util.HashMap;import java.util.List;import java.util.Map;public class Test { public static void main(String[] args) throws Exception { //加載配置文件為流 InputStream is = Resources.getResourceAsStream('MybatisDemo.xml'); //創(chuàng)建SqlSessionFactory工廠 SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(is); //核心接口(發(fā)送SQL語(yǔ)句) SqlSession session = ssf.openSession(); //根據(jù)id查詢(xún) Data data=session.selectOne('com.selectData',2); System.out.println('ID:'+data.getId()+'n'+'姓名:'+data.getName()+'n'+'年齡:'+data.getAge()); //查詢(xún)所有 List<Data> list = session.selectList('com.selectAll'); System.out.println(list); for(int i = 0; i < list.size(); i++){ System.out.println(list.get(i).toString()); } //模糊查詢(xún) List<Data> list1 = session.selectList('com.selectLike','t'); System.out.println(list1); for(int i = 0; i < list1.size(); i++){ System.out.println(list1.get(i).toString()); } //分頁(yè)查詢(xún) Map map=new HashMap<>(); map.put('start',0); map.put('length',2); List<Data> list2 = session.selectList('com.selectPage',map); System.out.println(list2); //分頁(yè)查詢(xún) RowBounds bunds=new RowBounds(0,1); List<Data> list3= session.selectList('com.selectPage1',null,bunds); System.out.println(list3); Data data1 = new Data('楊婷婷',24); int rows=session.insert('com.insertData', data1); System.out.println(rows); //釋放資源 session.close(); }}

實(shí)際上,只有select會(huì)自動(dòng)提交,insert、update、delete并不會(huì)自動(dòng)提交,所以問(wèn)題在于代碼

mybatis中insert返回值為1,但數(shù)據(jù)庫(kù)卻沒(méi)有數(shù)據(jù)

并未設(shè)置一個(gè)手動(dòng)提交。

2. 兩種解決辦法

2.1 利用commit

mybatis中insert返回值為1,但數(shù)據(jù)庫(kù)卻沒(méi)有數(shù)據(jù)

增加一行代碼以后,發(fā)現(xiàn)并沒(méi)有什么用,證明問(wèn)題不在這。運(yùn)行后數(shù)據(jù)庫(kù)中仍然無(wú)數(shù)據(jù)。

mybatis中insert返回值為1,但數(shù)據(jù)庫(kù)卻沒(méi)有數(shù)據(jù)

實(shí)際上,并不是commit方法不管用,而是添加代碼位置不對(duì),應(yīng)該是session中有了相應(yīng)指令再去提交,所以將session.commit()放到insert命令后,如下:

mybatis中insert返回值為1,但數(shù)據(jù)庫(kù)卻沒(méi)有數(shù)據(jù)

數(shù)據(jù)成功插入數(shù)據(jù)庫(kù)。

2.2 openSession()方法參數(shù)問(wèn)題

在openSession()方法中寫(xiě)入?yún)?shù) true.

mybatis中insert返回值為1,但數(shù)據(jù)庫(kù)卻沒(méi)有數(shù)據(jù)

mybatis中insert返回值為1,但數(shù)據(jù)庫(kù)卻沒(méi)有數(shù)據(jù)

數(shù)據(jù)成功插入數(shù)據(jù)庫(kù),完美!

到此這篇關(guān)于mybatis中insert返回值為1,但數(shù)據(jù)庫(kù)卻沒(méi)有數(shù)據(jù)的文章就介紹到這了,更多相關(guān)mybatis insert返回值為1內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

主站蜘蛛池模板: 一道精品视频一区二区三区图片 | 欧美成人aa | 欧美一区二区三区视频 | 久草久热 | 欧美另类综合 | 久久日本精品一区二区免费 | 亚洲天堂成人 | 日韩国产欧美成人一区二区影院 | 成年人性网站 | 欧美手机在线 | 欧美视频一区二区三区在线观看 | 成人在线综合网 | 久久青草热| 成人区视频爽爽爽爽爽 | 欧美真人视频一级毛片 | 亚洲国产精品成 | 国产一级毛片国产 | 成年人三级黄色片 | 色欲麻豆国产福利精品 | 国产美女精品一区二区三区 | 免费99视频有精品视频高清 | 国产日产亚洲系列首页 | 亚洲国产精品一区二区不卡 | 日韩亚洲精品不卡在线 | 亚洲美女影院 | 久草手机在线视频 | 99国产精品视频久久久久 | 久草免费在线视频观看 | 亚洲综合区 | 日本一级毛片免费 | 亚洲欧美国产一区二区三区 | 日韩在线亚洲 | 国产综合久久久久 | 女人张开腿让男人操 | 99视频国产在线 | 成人亚洲国产 | 91久久国产露脸精品 | 波多野结衣视频在线观看地址免费 | 国产精品久久自在自线观看 | 日韩男人的天堂 | 欧美成人免费观看久久 |