MyBatis-全局配置文件
在MyBatis中全局配置文件有着重要的地位,里面有9类行为信息;如果我们要想将MyBatis运用的熟练,配置全局配置文件是必不可少的步骤,所以我们一定要啃下这一块硬骨头。该文章是结合MyBatis配置文件网页加个人理解做的笔记,如果有的地方写的不够好或者有错误。恳请大家多多给我指出,因为我也是在摸索中进步。下面将对9大行为信息和属性信息配置进行解释.
1. MyBatis配置
注:MyBatis的标签是有顺序的,如果不按照顺序会出现The content of element type "configuration" must match 错误.标签的顺序为:
在Eclipse中引入XML的dtd约束文件,方便编写XML的时候有提示
1)属性(properties)
(1)dbconfig.properties
jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/mybatis jdbc.username=root jdbc.password=root123
(2)properties属性
(3)使用properties配置mybatis-config.xml
2)设置(settings) (1)mapUnderscoreToCamelCase
3)类型别名(typeAliases)
注意:MyBatis已经为许多常见的 Java 类型内建了相应的类型别名。它们都是大小写不敏感的,我们在起别名的时候千万不要占用已有的别名。
我们目前最新的mybatis推荐使用全限定类名书写。
4)类型处理器(typeHandlers)
无论是 MyBatis 在预处理语句(PreparedStatement)中设置一个参数时,还是从结果集中取出一个值时, 都会用类型处理器将获取的值以合适的方式转换成 Java 类型。
• 日期和时间的处理,JDK1.8以前一直是个头疼的问题。我们通常使用JSR310规范领导者Stephen Colebourne创建的Joda-Time来操作。1.8已经实现全部的JSR310规范了。
• 日期时间处理上,我们可以使用MyBatis基于JSR310(Date and Time API)编写的各种日期时间类型处理器。
• MyBatis3.4以前的版本需要我们手动注册这些处理器,以后的版本都是自动注册的
5)对象工厂(objectFactory)
6)插件(plugins)
插件是MyBatis提供的一个非常强大的机制,我们可以通过插件来修改MyBatis的一些核心行为。插件通过动态代理机制,可以介入四大对象的任何一个方法的执行。
7)环境配置(environments)
8)数据库厂商标识(databaseIdProvider)
MyBatis 可以根据不同的数据库厂商执行不同的语句.
(1)添加select
(2)添加databaseIdProvider
(3)配置properties(数据库链接信息)
#Mysql jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/mybatis jdbc.username=root jdbc.password=root123 #Oracle orcl.driver=oracle.jdbc.OracleDriver orcl.url=jdbc:oracle:thin:@localhost:1521:orcl orcl.username=scott orcl.password=123456
(4)配置environments
9)映射器(mappers)
(1)mybatis-config.xml
(2)select注解
public interface EmployeeMapperAnnotation { @Select("select * from tbl_employee where id=#{id}") public Employee getEmpById(Integer id); }
参考文档:https://mybatis.org/mybatis-3/zh/configuration.html