The content of element type "configuration" must match "(properties?,settings?,typeAliases?,typeHandlers?,objectFactory?...

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"   
  3. "http://mybatis.org/dtd/mybatis-3-config.dtd">  
  4.   
  5. <!-- 注意:每个标签必须按顺序写,不然蛋疼的DTD会提示错误:The content of element type "configuration" must match "(properties?,settings?,typeAliases?,typeHandlers?,objectFactory?,objectWrapperFactory?,plugins?,environments?,mappers?)". -->  
  6. <configuration>  
  7.     <!-- 属性配置 -->  
  8.     <properties resource="com/mybatisdemo/config/mysql-jdbc-connection.properties">  
  9.         <!-- 相同属性:最高优先级的属性是那些作为方法参数的,然后是资源/url 属性,最后是 properties元素中指定的属性 -->  
  10.         <property name="username" value="root"/>  
  11.         <property name="password" value="sa"/>  
  12.     </properties>  
  13.       
  14.     <!-- 设置缓存和延迟加载等等重要的运行时的行为方式 -->  
  15.     <settings>  
  16.         <!-- 设置超时时间,它决定驱动等待一个数据库响应的时间  -->  
  17.         <setting name="defaultStatementTimeout" value="25000"/>  
  18.     </settings>  
  19.       
  20.     <!-- 别名 -->  
  21.     <typeAliases>  
  22.         <typeAlias alias="UserInfo" type="com.mybatisdemo.entity.UserInfo"/>  
  23.     </typeAliases>  
  24.       
  25.     <environments default="development">  
  26.         <!-- environment 元素体中包含对事务管理和连接池的环境配置 -->  
  27.         <environment id="development">  
  28.             <transactionManager type="JDBC" />  
  29.             <!-- type分三种:  
  30.                     UNPOOLED是每次被请求时简单打开和关闭连接   
  31.                     UNPOOLED的数据源仅仅用来配置以下 4 种属性driver,url,username,password  
  32.                     POOLED :JDBC连接对象的数据源连接池的实现,不直接支持第三方数据库连接池  
  33.             -->  
  34.             <dataSource type="POOLED">  
  35.                 <property name="driver" value="${driver}" />  
  36.                 <property name="url" value="${url}" />  
  37.                 <property name="username" value="${username}" />  
  38.                 <property name="password" value="${password}" />  
  39.             </dataSource>  
  40.         </environment>  
  41.     </environments>  
  42.       
  43.     <!-- ORM映射文件 -->  
  44.     <mappers>  
  45.         <mapper resource="com/mybatisdemo/entity/config/UserInfoSqlMap.xml" />  
  46.     </mappers>  
  47.       
  48.       
  49. </configuration>

注意:

①xml中的标签顺序不能随便调换,否则会提示错误

②MyBatis使用自带的数据库连接池,不直接支持第三方连接池,不过网上有创建第三方连接池的方法

③以前别名(<typeAliases>)可以在sqlMap标签中创建,但现在需要在configuration标签中创建

④该配置文件可随意取名,在读取配置文件时指定该XML文件路径即可:

Java代码  收藏代码
  1. //读取核心配置文件  
  2. Reader reader = Resources.getResourceAsReader("com/mybatisdemo/config/Configuration.xml");  
  3. //创建SessionFactory实例  
  4. SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);  
posted @ 2015-08-30 15:27  QQ天堂  阅读(17249)  评论(3编辑  收藏  举报