
/br>
- properties 属性
- settings 设置
- typeAliases 类型别名
- typeHandlers 类型处理器
- objectFactory 对象工厂
- plugins 插件
- environments 环境
- environment 环境变量
- transactionManager 事务管理器
- dataSource 数据源
- environment 环境变量
- databaseIdProvider 数据库厂商标识
- mappers 映射器
db.properties的内容:
在myBatisConfig.xml中加载db.properties
properties特性:
注意:
建议:
mybatis-settings的配置属性以及描述
setting(设置) Description(描述) valid Values(验证值组) Default(默认值) cacheEnabled 在全局范围内启用或禁用缓存配置 任何映射器在此配置下。 true | false TRUE lazyLoadingEnabled 在全局范围内启用或禁用延迟加载。禁用时,所有相关联的将热加载。 true | false TRUE aggressiveLazyLoading 启用时,有延迟加载属性的对象将被完全加载后调用懒惰的任何属性。否则,每 一个属性是按需加载。 true | false TRUE multipleResultSetsEnabled 允许或不允许从一个单独的语句(需要兼容的驱动程序)要返回多个结果集。 true | false TRUE useColumnLabel 使用列标签,而不是列名。在这方面,不同的驱动有不同的行为。参考驱动文档或测试两种方法来决定你的驱动程序的行为如何。 true | false TRUE useGeneratedKeys 允许JDBC支持生成的密钥。兼容的驱动程序是必需的。此设置强制生成的键被使用,如果设置为true,一些驱动会不兼容性,但仍然可以工作。 true | false FALSE autoMappingBehavior 指定MyBatis的应如何自动映射列到字段/属性。NONE自动映射。 PARTIAL只会自动映射结果没有嵌套结果映射定义里面。 FULL会自动映射的结果映射任何复杂的(包含嵌套或其他)。
NONE,PARTIAL,FULL
PARTIAL defaultExecutorType 配置默认执行人。SIMPLE执行人确实没有什么特别的。 REUSE执行器重用准备好的语句。 BATCH执行器重用语句和批处理更新。SIMPLE,REUSE,BATCH
SIMPLE safeRowBoundsEnabled 允许使用嵌套的语句RowBounds。 true | false FALSE mapUnderscoreToCamelCase 从经典的数据库列名A_COLUMN启用自动映射到骆驼标识的经典的Java属性名aColumn。 true | false FALSE localCacheScope MyBatis的使用本地缓存,以防止循环引用,并加快反复嵌套查询。默认情况下(SESSION)会话期间执行的所有查询缓存。如果localCacheScope=STATMENT本地会话将被用于语句的执行,只是没有将数据共享之间的两个不同的调用相同的SqlSession。SESSION
STATEMENT
SESSION dbcTypeForNull 指定为空值时,没有特定的JDBC类型的参数的JDBC类型。有些驱动需要指定列的JDBC类型,但其他像NULL,VARCHAR或OTHER的工作与通用值。 JdbcType enumeration. Most common are: NULL, VARCHAR and OTHER OTHER lazyLoadTriggerMethods 指定触发延迟加载的对象的方法。 A method name list separated by commas equals,clone,hashCode,toString defaultScriptingLanguage 指定所使用的语言默认为动态SQL生成。 A type alias or fully qualified class name.org.apache.ibatis.scripting.xmltags
.XMLDynamicLanguageDriver
callSettersOnNulls 指定如果setter方法或map的put方法时,将调用检索到的值是null。它是有用的,当你依靠Map.keySet()或null初始化。注意(如整型,布尔等)不会被设置为null。 true | false FALSE logPrefix 指定的前缀字串,MyBatis将会增加记录器的名称。 Any String Not set logImpl 指定MyBatis的日志实现使用。如果此设置是不存在的记录的实施将自动查找。 SLF4J | LOG4J | LOG4J2 | JDK_LOGGING | COMMONS_LOGGING | STDOUT_LOGGING | NO_LOGGING Not set proxyFactory 指定代理工具,MyBatis将会使用创建懒加载能力的对象。 CGLIB | JAVASSIST CGLIBimg src="https://www.west.cn/info/upload//j2kexrdqerg.png" alt="" />
输入参数的类型、需要< p>
别名
映射的类型
_byte
byte
_long
long
_short
short
_int
int
_integer
int
_double
double
_float
float
_boolean
boolean
string
String
byte
Byte
long
Long
short
Short
int
Integer
integer
Integer
double
Double
float
Float
boolean
Boolean
date
Date
decimal
BigDecimal
bigdecimal
BigDecimal
2.3.2.自定义别名
(一)、单个别名定义(在myBatisConfig.xml)
UserMapper.xml引用别名
(二)批量定义别名,扫描指定的包
,可以使用注解解决
img src="https://www.west.cn/info/upload//fi34bfsgoua.png" alt="" />
img src="https://www.west.cn/info/upload//ka5qojgs40w.png" alt="" />
mybatis支持类型处理器:
类型处理器
Java类型
JDBC类型
BooleanTypeHandler
Boolean,boolean
任何兼容的布尔值
ByteTypeHandler
Byte,byte
任何兼容的数字或字节类型
ShortTypeHandler
Short,short
任何兼容的数字或短整型
IntegerTypeHandler
Integer,int
任何兼容的数字和整型
LongTypeHandler
Long,long
任何兼容的数字或长整型
FloatTypeHandler
Float,float
任何兼容的数字或单精度浮点型
DoubleTypeHandler
Double,double
任何兼容的数字或双精度浮点型
BigDecimalTypeHandler
BigDecimal
任何兼容的数字或十进制小数类型
StringTypeHandler
String
CHAR和VARCHAR类型
ClobTypeHandler
String
CLOB和LONGVARCHAR类型
NStringTypeHandler
String
NVARCHAR和NCHAR类型
NClobTypeHandler
String
NCLOB类型
ByteArrayTypeHandler
byte[]
任何兼容的字节流类型
BlobTypeHandler
byte[]
BLOB和LONGVARBINARY类型
DateTypeHandler
Date(java.util)
TIMESTAMP类型
DateOnlyTypeHandler
Date(java.util)
DATE类型
TimeOnlyTypeHandler
Date(java.util)
TIME类型
SqlTimestampTypeHandler
Timestamp(java.sql)
TIMESTAMP类型
SqlDateTypeHandler
Date(java.sql)
DATE类型
SqlTimeTypeHandler
Time(java.sql)
TIME类型
ObjectTypeHandler
任意
其他或未指定类型
EnumTypeHandler
Enumeration类型
VARCHAR-任何兼容的字符串类型,作为代码存储(而不是索引)。
2.5.1、通过resource加载单个映射文件
2.5.2:通过mapper接口加载单个映射文件
注意:
2.5.3、批量加载mapper
img src="https://www.west.cn/info/upload//4mhmq0b5zwb.png" alt="" />
img src="https://www.west.cn/info/upload//xsx12z2b51w.png" alt="" />
img src="https://www.west.cn/info/upload//sfmzzw2urpg.png" alt="" />
img src="https://www.west.cn/info/upload//unp5lglngka.png" alt="" />
img src="https://www.west.cn/info/upload//d0teqc5zfph.png" alt="" />
img src="https://www.west.cn/info/upload//vrlde2pmnbh.png" alt="" />
ashMap 、POJO 的包装类型。
img src="https://www.west.cn/info/upload//ubhtlrkzvkh.png" alt="" />
(一)、旧版本MyBatis使用索引号:
(二)、新版本MyBatis使用索引号:
img src="https://www.west.cn/info/upload//uyszoajvhyf.png" alt="" />
(三)、使用Map
img src="https://www.west.cn/info/upload//r4sncdl2vsv.png" alt="" />
(四)、注解参数名称:
img src="https://www.west.cn/info/upload//uj34bhqys0a.png" alt="" />
img src="https://www.west.cn/info/upload//arnnop35h3x.png" alt="" />
br />测试user对象:
img src="https://www.west.cn/info/upload//y0hyirx0qis.png" alt="" />
br />mapper接口:
esultType 进行输出映射,只有查询出来的列名和 pojo 中的属性名一致,该列才可以映射成功。
中的属性名全部不一致,没有创建POJO 对象。
中的属性有一个一致,就会创建POJO 对象。
(一)、输出简单类型
查询出来的结果集只有一行一列,可以使用简单类型进行输出映射。
(二)、输出POJO对象和POJO列表
POJO 单个对象还是一个列表(L ist 中存放POJO ),在 mapper.xml 中R esultType 指定的类型是一样的,但
输出单个POJO对象,方法返回值是单个对象类型
接口:
映射:
输出pojo对象list,方法返回值是List<POJO>
生成的动态代理对象中是根据mapper.java方法的返回值类型确定是调用selectOne(返回单个对象调用)还是selectList(返回集合对象调用)
中使用R esultMap 完成自定义输出结果映射,如一对多,多对多关联关系。
问题:
假定POJO对象与表中的字段不一致,如下所示:

img src="https://www.west.cn/info/upload//qz440bz3jkq.png" alt="" />
(一)、定义并引用ResultMap
img src="https://www.west.cn/info/upload//vyqgor523hp.png" alt="" />
(二)、使用别名
img src="https://www.west.cn/info/upload//nybyfqsn5js.png" alt="" />
resultType 进行输出映射,只有查询出来的列名和 pojo 中的属性名一致,该列才可以映射成功。
pojo 的属性名不一致,通过定义一个 resultMap 对列名和 pojo 属性名之间作一个映射关系。
4、内部测试题(4个小时)
1、管理数据库中所有图书分类(Categories),包含图书编号(id),名称(name)
2、管理数据库中所有图书(Books),包含图书编号(isbn)、类别(categoryId,外键)书名(title)、作者(author)、价格(price)、出版日期(publishDate)、封面(cover)、详细介绍(details)
3、分页 10
4、多条件组件查询(3个以上的条件任意组合)(高级) 10
5、多删除 (高级) 10
6、上传封面 (高级) 10
7、富文本编辑器 (高级) 10
到此这篇富文本编辑器测试用例(富文本编辑器实现)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/te-aq/76950.html