對錶中的欄位設定了預設值,新增記錄後卻發現該欄位為null

ZHOU_VIP發表於2017-12-11

對這張表新增了欄位flag、並設定了預設值1


新增記錄是可以入庫的,沒有問題,可發現flag欄位卻為null,略思考下,原來是把flag寫到實體中了;

結果框架的新增方法(cultureactGzlManager.saveNewObject(msg);)儲存實體的時候把null儲存進了資料庫。

解決方法:去掉實體中的flag即可!

題外話:如果想要在實體中寫flag,那麼在儲存的時候就應該寫程式碼(msg.setFlag(1);),把預設值1儲存到flag中去。


可是我要給前臺傳這個欄位啊,實體中不能去掉啊,去掉就沒有意義了,還是後臺在儲存的時候老老實實加程式碼吧msg.setFlag(1);

可是不甘心,加班也要反覆嘗試,加了這個註解這樣是可以的:字面意思就是不讓實體insert,由資料庫插入預設值


主要是這個註解起作用了,改成Integer也是可以的:


哈哈,改成String也是可以的了,無敵了:





相關文章