Mybatis的xml文件的相关配置

mybatis相关属性:configuration、propeties、settings、typeAliases、typeHandlers、objectFactory、plugins、environments、environment、transactionManager、datasource

1、mybatis可以使用properties来引入外部properties配置文件
resource:引入类路径下的资源
url:引入网络路径或磁盘下的资源

2、setting设置,改变mybatis的运行时行为

3、typeAliases:类型别名,为类指定类名

4、typeHandler:1、日期类型处理 2、自定义类型处理器

步骤:1、实现org.Apache.ibatis.type.TypeHandler接口或继承org.Apache.ibatis.type.BaseTypeHandler

            2、指定映射某个JDBC类型

            3、在mybatis全局配置文件中注册

5、plugins

6、ObjectFactory:查对象工厂,默认使用

ObjectFactory只包含两个方法,一个是构造函数,一个是带参数的构造函数。

在ObjectFactory实例化后,通过setProperties方法,在对象工厂中定义属性。

7、environment:虽然可以配置多重环境,你也只可以选择一对一SqlSessionFactory实例

一个SqlSessionFactory实例对应一个数据库

关键段:1、设定一个默认环境Id   2、这个环境Id对每个环境都起作用  3、配置事务管理器  4、配置数据源

事务管理器:mybatis有两个事情管理类型:JDBC:直接全部使用JDBC的提交和回滚功能(依靠使用连接的数据源来管理事务的作用域)

managed:不提交任何操作,直接把类名称或者类型别名指向你的TransactionFactory接口实现类。

数据源:是用来配置使用JDBC数据源接口的JDBC连接对象的源

8、Mappers:SQL映射语句文件

运行顺序:先运行selectKey查询id的sql,查出id值封装成JavaBean的id的属性

在运行插入的sql:取出id属性对应值

单个参数:mybatis不会做特殊处理,#{参数名}:取出参数值

多个参数:mybatis会做特殊处理  多个参数会封装成一个map    #{}就是从map中获取指定的key值   key:param1.......paramn

命名参数:明确指定封装参数值map的key;多个参数会被封装成一个map,key使用@param注解指定的   value:参数值

POJO:如果多个参数正好是我们业务逻辑的数据模型,我们直接传入POJO

#{属性名}:取出传入的POJO的属性值

Map:如果多个参数不是业务模型中的数据,没有对应的POJO,传入Map

#{key}:取出map中对应的值

注意:mapper映射的xml文件里面指定了对应的实体类,该实体类必须要有无参构造器

 如果多个参数不是业务模型中的数据,但是经常要使用,To(Transfer Object)数据传输对象

原文地址:https://www.cnblogs.com/cye9971-/p/10837015.html