通過上一小節,我們對 mybatis有了一個大緻的了解,下面我們通過一個入門執行個體來對mybatis有更近一步的了解。
我們用 mybatis 來對 user 表進行增删改查操作。
ps:本篇部落格源代碼連結:http://pan.baidu.com/s/1eSEfc8i 密碼:j480
1、建立MySQL資料庫:mybatisDemo和表:user
這裡我們就不寫腳本建立了,建立完成後,再向其中插入幾條資料即可。
user 表字段如下:

2、建立一個Java工程,并導入相應的jar包,具體目錄如下
注意:log4j和Junit不是必須的,但是我們為了檢視日志以及便于測試,加入了這兩個jar包
3、在 MyBatisTest 工程中添加資料庫配置檔案 mybatis-configuration.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | |
4、定義表所對應的實體類
34 35 36 37 38 39 40 41 42 43 44 45 46 | |
5、定義操作 user 表的sql映射檔案userMapper.xml
47 48 49 50 51 52 | |
6、向 mybatis-configuration.xml 配置檔案中注冊 userMapper.xml 檔案
|
7、建立測試類
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 | |
補充:如何得到插入資料之後的主鍵值?
第一種:資料庫設定主鍵自增機制
userMapper.xml 檔案中定義:
|
測試:
|
第二種:非自增主鍵機制
|
總結:
①、parameterType:指定輸入參數的類型
②、resultType:指定輸出結果的類型,在select中如果查詢結果是集合,那麼也表示集合中每個元素的類型
③、#{}:表示占位符,用來接收輸入參數,類型可以是簡單類型,pojo,HashMap等等
如果接收簡單類型,#{}可以寫成 value 或者其他名稱
如果接收 pojo 對象值,通過 OGNL 讀取對象中的屬性值,即屬性.屬性.屬性...的方式擷取屬性值
④、${}:表示一個拼接符,會引起 sql 注入,不建議使用
用來接收輸入參數,類型可以是簡單類型,pojo,HashMap等等
如果接收簡單類型,${}裡面隻能是 value