1.模糊查詢
/*** 測試模糊查詢
* @param
mohu
* @return
*/list
testmohu(@param("mohu") string mohu);
<
select
id="testmohu"
resulttype
="user"
>
select * from t_user where username like "%"#"%"
select
>
2.處理批量刪除
在進行批量刪除的時候必須使用${},因為${}是拼接,在sql執行時引數不帶有引號
而使用#{}時,#{}是佔位符賦值操作,在此操作下sql語句引數帶有引號,sql報錯
介面方法:
/*** 處理批量刪除
*/int deletemore(@param("ids") string ids);
<
delete
id="deletemore"
>
delete from student where id in ($)
delete
>
測試類方法:
@test
publicvoid
deletemore()
3.動態設定表名
當一張表中的資料太多時,我們將一張大表分成幾張小的表來共同儲存資料(表中的屬性都是一樣的)
當要選用其中某一張表時,就會用到動態設定表明的操作
當使用到動態設定表明時要使用${}來拼接sql語句 這樣sql語句再能正確執行;而使用#{}時因為帶有引號的原因,sql會報錯
介面方法:
/*** 動態設定表名
* @param
tablename
* @return
*/list
selectstudenttable(@param("tablename") string tablename);
<
select
id="selectstudenttable"
resulttype
="student"
>
select * from $
select
>
測試類方法:
@testpublic
void
selectstudenttable()
sqlsession.close();
}
4.新增功能獲取自增的主鍵
t_clazz(clazz_id,clazz_name)
t_student(student_id,student_name,clazz_id)
1、新增班級資訊
2、獲取新新增的班級的id
3、為班級分配學生,即將某學的班級id修改為新新增的班級的id
為了獲取新增的資訊中的自增主鍵
介面方法:
/*** 新增功能獲取自增主鍵
* @param
student
*/void insertstudent(student student);
<
insert
id="insertstudent"
usegeneratedkeys
="true"
keyproperty
="id"
>
insert into student values (null,#,#,#)
insert
>
測試類方法:
@testpublic
void
insertstudent()
mybatis執行任意SQL
一 用乙個方法可靈活方便執任意自定義sql,不需要在xml或介面中宣告,以下是實現,採用註解,xml沒測試,應該類似。1 宣告乙個介面,裡面包括乙個超級sql方法 public inte ce sqldao list sql string sql,param param map param 2呼叫m...
mybatis中sql中的特殊符號
1.prefix 在trim標籤內sql語句加上字首。suffix 在trim標籤內sql語句加上字尾。suffixoverrides 指定去除多餘的字尾內容,如 suffixoverrides 去除trim標籤內sql語句多餘的字尾 prefixoverrides 指定去除多餘的字首內容 2.下面...
MyBatis特殊字元
在 mybatis 中 如果見到以下表示,不要慌張,她們代表一些特殊字元。小於號 大於號 與 單引號 雙引號 ex select distinct t.token,t.type,t.userid from notific n left join provider s on s.code n.rece...