Mybatis作為持久層更新資料庫只能更新部分字段

2021-07-29 18:54:21 字數 675 閱讀 3938

先看乙個表的 字段 及 型別  ,這裡這個content 型別比較特殊,拿他作為例子來說明下問題

問題描述:更新這個表對應的實體類時 運用mybatis逆向工程生成的方法updatebyprimarykey() 其他欄位都可以更新,唯獨content 更新失敗,debug 斷點除錯,跟了一下 引數都沒有問題。

我們到mybatis的逆向工程生成的xml 對映檔案看一下:

然後我們看一下updatebyprimarykey 方法:

終於找到原因了

然後細心地你 如果多瞅一眼的話 你還會發現這個 updatebyprimarykeyselective()這個方法我表示從來沒人教過也沒用過,但是仔細看一下,應該能實現我們的效果

然後 我就把原來 需要更新的地方  用updatebyprimarykeyselective()方法代替updatebyprimarykey() 果然 更新 成功!

完美解決。

持久層框架mybatis

本篇的中心內容,解決以下問題。持久層框架mybatis篇與mybatis plus使用 mybatis 是支援定製化 sql 儲存過程以及高階對映的優秀的持久層框架,其主要就完成 構建sqlsessionfactory過程 對映器的動態 sqlsession的4大物件 sql執行的過程 mybati...

3 3 1 持久層框架 MyBatis入門

mybatis是優秀的持久層框架 mybatis使用xml將sql與程式解耦,便於維護 mybatis學習簡單,執行高效,是jdbc的延伸 引入mybatis依賴 建立實體類 初始化sessionfactory 利用sqlsession物件運算元據 sqlsession是mybatis運算元據庫的核...

java持久層框架mybatis如何防止sql注入

sql注入大家都不陌生,是一種常見的攻擊方式,攻擊者在介面的表單資訊或url上輸入一些奇怪的sql片段,例如 or 1 1 這樣的語句,有可能入侵引數校驗不足的應用程式。所以在我們的應用中需要做一些工作,來防備這樣的攻擊方式。在一些安全性很高的應用中,比如銀行軟體,經常使用將sql語句全部替換為儲存...