在使用mybatis做持久層時,insert語句預設是不返回記錄的主鍵值,而是返回插入的記錄條數;如果業務層需要得到記錄的主鍵時,可以通過配置的方式來完成這個功能
針對sequence主鍵而言,在執行insert sql前必須指定乙個主鍵值給要插入的記錄,如oracle、db2,可以採用如下配置方式:
select seq_test.nextval from dual
insert into category (name_zh, parent_id,
show_order, delete_status, description
)values (#,
#,#,#,#
)針對自增主鍵的表,在插入時不需要主鍵,而是在插入過程自動獲取乙個自增的主鍵,比如mysql,可以採用如下兩種配置方式:
insert into category (name_zh, parent_id,
show_order, delete_status, description
)values (#,
#,#,
#, #)或
select last_insert_id() as id
insert into category (name_zh, parent_id,
show_order, delete_status, description
)values (#,
#,#,#,#
)在插入操作完成之後,引數category的id屬性就已經被賦值了
持久層框架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語句全部替換為儲存...