首页 > 学院 > 开发设计 > 正文

MyBatis属性详解

2019-11-06 06:52:35
字体:
来源:转载
供稿:网友
SELECT属性配置
属性描述取值默认
id在这个模式下唯一的标识符,可被其它语句引用  
parameterType传给此语句的参数的完整类名或别名  
resultType语句返回值类型的整类名或别名。注意,如果是集合,那么这里填写的是集合的项的整类名或别名,而不是集合本身的类名。(resultType 与resultMap 不能并用)  
resultMap引用的外部resultMap 名。结果集映射是MyBatis 中最强大的特性。许多复杂的映射都可以轻松解决。(resultType 与resultMap 不能并用)  
flushCache如果设为true,则会在每次语句调用的时候就会清空缓存。select 语句默认设为falsetrue|falsefalse
useCache如果设为true,则语句的结果集将被缓存。select 语句默认设为false true|false falsetimeout 设置驱动器在抛出异常前等待回应的最长时间,默认为不设值,由驱动器自己决定true|falsefalse
timeout设置驱动器在抛出异常前等待回应的最长时间,默认为不设值,由驱动器自己决定正整数未设置
fetchSize设置一个值后,驱动器会在结果集数目达到此数值后,激发返回,默认为不设值,由驱动器自己决定正整数驱动器决定
statementTypestatement,PReparedstatement,callablestatement。预准备语句、可调用语句STATEMENTPREPAREDCALLABLEPREPARED
resultSetTypeforward_only,scroll_sensitive,scroll_insensitive只转发,滚动敏感,不区分大小写的滚动FORWARD_ONLYSCROLL_SENSITIVESCROLL_INSENSITIVE驱动器决定
Insert属性配置
属性描述取值默认
id在这个模式下唯一的标识符,可被其它语句引用  
parameterType传给此语句的参数的完整类名或别名  
flushCache如果设为true,则会在每次语句调用的时候就会清空缓存。select 语句默认设为falsetrue|falsefalse
useCache如果设为true,则语句的结果集将被缓存。select 语句默认设为false true|false falsetimeout 设置驱动器在抛出异常前等待回应的最长时间,默认为不设值,由驱动器自己决定true|falsefalse
timeout设置驱动器在抛出异常前等待回应的最长时间,默认为不设值,由驱动器自己决定正整数未设置
fetchSize设置一个值后,驱动器会在结果集数目达到此数值后,激发返回,默认为不设值,由驱动器自己决定正整数驱动器决定
statementTypestatement,preparedstatement,callablestatement。预准备语句、可调用语句STATEMENTPREPAREDCALLABLEPREPARED
useGeneratedKeys

告诉MyBatis 使用JDBC 的getGeneratedKeys 方法来获取数据库自己生成的主键(MySQL、SQLSERVER 等

关系型数据库会有自动生成的字段)。默认:false

true|falsefalse
keyProperty

标识一个将要被MyBatis 设置进getGeneratedKeys 的key 所返回的值,或者为insert 语句使用一个selectKey

子元素。

  
selectKey属性配置
属性描述取值
keyPropertyselectKey 语句生成结果需要设置的属性。 
resultType生成结果类型,MyBatis 允许使用基本的数据类型,包括String 、int类型。 
order可以设成BEFORE 或者AFTER,如果设为BEFORE,那它会先选择主键,然后设置keyProperty,再执行insert语句;如果设为AFTER,它就先运行insert 语句再运行selectKey 语句,通常是insert 语句中内部调用数据库(像Oracle)内嵌的序列机制。BEFOREAFTER
statementType像上面的那样, MyBatis 支持STATEMENT,PREPARED和CALLABLE 的语句形式, 对应Statement ,PreparedStatement 和CallableStatement 响应STATEMENTPREPAREDCALLABLE
UPDATE和DELETE属性配置
属性描述取值默认
id在这个模式下唯一的标识符,可被其它语句引用  
parameterType传给此语句的参数的完整类名或别名  
flushCache如果设为true,则会在每次语句调用的时候就会清空缓存。select 语句默认设为falsetrue|falsefalse
useCache如果设为true,则语句的结果集将被缓存。select 语句默认设为false true|false falsetimeout 设置驱动器在抛出异常前等待回应的最长时间,默认为不设值,由驱动器自己决定true|falsefalse
timeout设置驱动器在抛出异常前等待回应的最长时间,默认为不设值,由驱动器自己决定正整数未设置
fetchSize设置一个值后,驱动器会在结果集数目达到此数值后,激发返回,默认为不设值,由驱动器自己决定正整数驱动器决定
statementTypestatement,preparedstatement,callablestatement。预准备语句、可调用语句STATEMENTPREPAREDCALLABLEPREPARED
Mybatis内置类型别名
别名映射的类型
_bytebyte
_longlong
_shortshort
_intint
_integerint
_doubledouble
_floatfloat
_booleanboolean
stringString
byteByte
longLong
shortShort
intInteger
integerInteger
doubleDouble
floatFloat
booleanBoolean
dateDate
decimalBigDecimal
bigdecimalBigDecimal
objectObject
mapMap
hashmapHashMap
listList
arraylistArrayList
collectionCollection
iteratorIterator
Mybatis内置TypeHandler
类型处理器java 类型JDBC 类型
BooleanTypeHandlerjava.lang.Booleanboolean任何兼容的布尔值
ByteTypeHandlerjava.lang.Byte, byte任何兼容的数字或字节类型
ShortTypeHandlerjava.lang.Shortshort任何兼容的数字或短整型
IntegerTypeHandlerjava.lang.Integerint任何兼容的数字和整型
LongTypeHandlerjava.lang.Longlong任何兼容的数字或长整型
FloatTypeHandlerjava.lang.Float, float任何兼容的数字或单精度浮点型
DoubleTypeHandlerjava.lang.Doubledouble任何兼容的数字或双精度浮点型
BigDecimalTypeHandlerjava.math.BigDecimal任何兼容的数字或十进制小数类型
StringTypeHandlerjava.lang.StringCHAR 和 VARCHAR 类型
ClobTypeHandlerjava.lang.StringCLOB 和 LONGVARCHAR 类型
NStringTypeHandlerjava.lang.StringNVARCHAR 和 NCHAR 类型
NClobTypeHandlerjava.lang.StringNCLOB 类型
ByteArrayTypeHandlerbyte[]任何兼容的字节流类型
BlobTypeHandlerbyte[]BLOB 和 LONGVARBINARY 类型
DateTypeHandlerjava.util.DateTIMESTAMP 类型
DateOnlyTypeHandlerjava.util.DateDATE 类型
TimeOnlyTypeHandlerjava.util.DateTIME 类型
SqlTimestampTypeHandlerjava.sql.TimestampTIMESTAMP 类型
SqlDateTypeHandlerjava.sql.DateDATE 类型
SqlTimeTypeHandlerjava.sql.TimeTIME 类型
ObjectTypeHandlerAny其他或未指定类型
EnumTypeHandlerEnumeration TypeVARCHAR-任何兼容的字符串类型, 作为代码存储(而不是索引)
EnumOrdinalTypeHandlerEnumeration TypeAny compatible NUMERIC or DOUBLE, as the position is stored (not the code itself).

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表