mybatis-config.xml核心配置文件
mybatis-config.xml包含的内容如下
configuration(配置)properties(属性)settings(设置)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境配置)environment(环境变量)transactionManager(事务管理器)dataSource(数据源)databaseIdProvider(数据库厂商标识)mappers(映射器)注意元素节点的顺序!顺序不对会报错
1.environments元素environmentsdefault="development"environmentid="development"transactionManagertype="JDBC"propertyname="..."value="..."//transactionManagerdataSourcetype="POOLED"propertyname="driver"value="${driver}"/propertyname="url"value="${url}"/propertyname="username"value="${username}"/propertyname="password"value="${password}"//dataSource/environmentenvironmentid="test"transactionManagertype="JDBC"propertyname="..."value="..."//transactionManagerdataSourcetype="POOLED"propertyname="driver"value="${driver}"/propertyname="url"value="${url}"/propertyname="username"value="${username}"/propertyname="password"value="${password}"//dataSource/environment/environmentsenvironments配置mybatis多套环境,将sql映射到多个不同的数据库上,必须指定一个默认环境,即default="development"1.1子元素environment
其中dataSource数据源(共三种内建的数据源类型)
type="[UNPOOLED
POOLED
JNDI]")unpooled:这个数据源的实现只是每次被请求时打开和关闭连接pooled:这种数据源的实现利用“池”的概念将JDBC连接对象组织起来,这是一种使得并发Web应用快速响应请求的流行处理方式。jndi:这个数据源的实现是为了能在如Spring或应用服务器这类容器中使用,容器可以集中或在外部配置数据源,然后放置一个JNDI上下文的引用。注:数据源也有很多第三方的实现,比如dbcp,c3p0,druid等等....1.2transactionManager事务管理器(共两种)
transactionManagertype="[JDBC
MANAGED]"/2.mappers元素(定义映射SQL语句文件)
主要用于找到sql语句的文件在哪里?可以使用不同的方式引用sql语句具体的引用方式如下
使用相对路径引入sql语句的文件!--使用相对于类路径的资源引用--mappersmapperresource="org/mybatis/builder/PostMapper.xml"//mappers使用完全限定资源定位符(URL)
!--使用完全限定资源定位符(URL)--mappersmapperurl="file:///var/mappers/AuthorMapper.xml"//mappers使用映射器接口实现类的完全限定类名,需要配置文件名称和接口名称一致,并且位于同一目录下
!--使用映射器接口实现类的完全限定类名需要配置文件名称和接口名称一致,并且位于同一目录下--mappersmapperclass="org.mybatis.builder.AuthorMapper"//mappers将包内的映射器接口实现全部注册为映射器但是需要配置文件名称和接口名称一致,并且位于同一目录下
!--将包内的映射器接口实现全部注册为映射器.但是需要配置文件名称和接口名称一致,并且位于同一目录下--mapperspackagename="org.mybatis.builder"//mappers
**mapper配置文件主要用用关联dao接口中的方法,并书写sql语句相当于实现了接口中的各个方法
?xmlversion="1.0"encoding="UTF-8"?!DOCTYPEmapperPUBLIC"-//mybatis.org//DTDMapper3.0//EN""