1 /** 2 <select 3 id="selectUser" //與 PersonMapper.java 接口對應的方法 4 parameterType="int" //傳入的參數格式 5 resultType="hashmap" //返回的數據類型,當返回多個參數的時候,建議使用 resultMap 6 resultMap="userResultMap" //返回的數據類型,相當於對 resultType="hashmap" 的封裝。resultType、resultMap兩者只能存在一個 7 parameterMap="deprecated" //已經廢棄,現在使用 resultType 和 resultType 8 flushCache="false" //是否清空緩存,默認為false 9 useCache="true" //是否二級緩存,默認值:對 select 元素為 true。 10 timeout="10000" //等待數據庫返回請求結果的秒數 11 fetchSize="256" 12 statementType="PREPARED" // STATEMENT,PREPARED 或 CALLABLE 的一個。這會讓 MyBatis 分別使用 Statement,PreparedStatement
或 CallableStatement,默認值:PREPARED。 13 ...> 14 15 <insert 16 id="insertUser" 17 parameterType="com.test.model.User" 18 flushCache="true" 19 statementType="PREPARED" 20 timeout="20" 21 keyProperty="" //(僅對 insert 和 update 有用)唯一標記一個屬性,MyBatis 會通過 getGeneratedKeys 的返回值或者通過 insert 語句的
selectKey 子元素設置它的鍵值,默認:unset。如果希望得到多個生成的列,也可以是逗號分隔的屬性名稱列表。 22 useGeneratedKeys="" //(僅對 insert 和 update 有用)這會令 MyBatis 使用 JDBC 的 getGeneratedKeys 方法來取出由數據庫內部生成的主鍵
(比如:像 MySQL 和 SQL Server 這樣的關系數據庫管理系統的自動遞增字段),默認值:false。 23 keyColumn="" //(僅對 insert 和 update 有用)通過生成的鍵值設置表中的列名,這個設置僅在某些數據庫(像 PostgreSQL)是必須的,
當主鍵列不是表中的第一列的時候需要設置。如果希望得到多個生成的列,也可以是逗號分隔的屬性名稱列表。 24 > 25 26 <update 27 id="updateUser" 28 parameterType="com.test.model.User" 29 flushCache="true" 30 statementType="PREPARED" 31 timeout="20"> 32 33 <delete 34 id="deleteUser" 35 parameterType="com.test.model.User" 36 flushCache="true" 37 statementType="PREPARED" 38 timeout="20"> 39 */