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 */