ibatis高階應用
2009-04-16 13:24
在ibatis的快速入門文章裡已經有了簡單例子,在這裡,只對高階應用說明!
ibatis官方站點:
小技巧:提示自動補全問題
在寫配置檔案的時候,我們希望檔案會帶有提示功能,所以在配置檔案上都會引用此檔案的定義dtd,例:
"dtd/sql-map-config-2.dtd">
b:在ibatis.jar的com.ibatis.sqlmap.engine.builder.xml這個包裡面找到dtd檔案。
然後,我們只需要把dtd檔案的路徑指定上即可:
我把他放到了與類檔案同一目錄下,所以路徑為
"./sql-map-config-2.dtd">
"./sql-map-2.dtd">
建立例子資料庫:
create table user_account
(userid int,
username varchar2(10),
userpwd varchar2(10),
groupname varchar2(10)
);insert into user_account values(1,'jack','beijing','nba');
insert into user_account values(2,'tom','shanghai','nba');
insert into user_account values(3,'mary','shanghai','ibm');
返回是pojo類或hashmap是類似的!
一:#與$的區別
我們在用到模糊查詢的時候,如果寫成
select * from user_account where username like '%#username#%'
這樣是錯誤的,我們要寫成
select * from user_account where username like '%$username$%'
二:resultmap
select * from user_account where groupname=#groupname#
三:返回xml
select * from user_account where groupname=#groupname#
四:paramtermap
insert into user_account
(username, password, groupname
)values(
?,?,?
)五:自動生成主鍵
select sys_public_sequence.nextval as id from dual
insert into user_account
(userid, username, password, groupname
)values(
#id#,#username#,#userpwd#,#groupname#
)六:呼叫儲存過程
map m=new hashmap();
m.put("name", new string("lisi"));
sqlmapclient.update("pro_insert",m);
system.out.println("call procedure ok!");
ibatis高階應用中的如何獲得客戶端??
string resource conf sql map config.xml system.out.println reader resource try reader reader resources.getresourceasreader resource sqlmapconfigparser...
ibatis配置及應用
1 在spring啟動配置檔案中加ibatis對應bean classpath config xml common sqlmapconfig db2.xml classpath config xml biz sqlmapconfig db2.xml 2 設定sqlmapconfig 找到sqlmap...
ibatis中應用技巧
ibatis中經常遇到乙個公用的sql被多處呼叫的情況。比如許可權驗證這塊,我需要知道每次使用者取出的資源驗證對其是否有許可權,則需要對取出的資源列表做乙個過濾。資源表結構大致如下 sys res row id 資源id sys sys res row id 上級資源id system row id...