zoukankan      html  css  js  c++  java
  • mybatis 全局配置文件

    传送门:mybatis XML 映射配置文件官方文档

      配置文件中的标签顺序不能颠倒,否则会报错。

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE 
        configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 
        "http://mybatis.org/dtd/mybatis-3-config.dtd"
    >
    
    <configuration>
    
        <!-- 属性配置 -->
        <properties resource="jdbc.properties">
            <!-- 如果属性在不只一个地方进行了配置,那么 MyBatis 将按照下面的顺序来加载: 
                在 properties 元素体内指定的属性首先被读取。 
                然后根据 properties 元素中的 resource 属性读取类路径下属性文件或根据 url 属性指定的路径读取属性文件,并覆盖已读取的同名属性。 
                最后读取作为方法参数传递的属性,并覆盖已读取的同名属性。 
                因此,通过方法参数传递的属性具有最高优先级,resource/url 属性中指定的配置文件次之,最低优先级的是 
                properties 属性中指定的属性。 
        -->
            <property name="driver" value="com.mysql.jdbc.Driver" />
            <property name="url" value="jdbc:mysql://localhost:3306/mybatis" />
            <property name="username" value="root" />
            <property name="password" value="123456" />
        </properties>
    
        <!-- 这是 MyBatis 中极为重要的调整设置,它们会改变 MyBatis 的运行时行为 -->
        <settings>
            <setting name="cacheEnabled" value="true" />
            <setting name="lazyLoadingEnabled" value="true" />
            <setting name="multipleResultSetsEnabled" value="true" />
            <setting name="useColumnLabel" value="true" />
            <setting name="useGeneratedKeys" value="false" />
            <setting name="autoMappingBehavior" value="PARTIAL" />
            <setting name="autoMappingUnknownColumnBehavior" value="WARNING" />
            <setting name="defaultExecutorType" value="SIMPLE" />
            <setting name="defaultStatementTimeout" value="25" />
            <setting name="defaultFetchSize" value="100" />
            <setting name="safeRowBoundsEnabled" value="false" />
            <setting name="mapUnderscoreToCamelCase" value="false" />
            <setting name="localCacheScope" value="SESSION" />
            <setting name="jdbcTypeForNull" value="OTHER" />
            <setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode,toString" />
        </settings>
    
        <!-- 类型别名是为 Java 类型设置一个短的名字。它只和 XML 配置有关,存在的意义仅在于用来减少类完全限定名的冗余。 -->
        <typeAliases>
            <typeAlias alias="user" type="com.skd.mybits.domain.User" />
            <!-- 
                每一个在包 domain.blog 中的 Java Bean,在 没有注解的情况下,会使用 Bean 的首字母小写的非限定类名来作为它的别名。 
                若有注解,则别名为其注解值。在类上的注解形式为 @Alias("author") 
            -->
            <package name="domain.blog" />
        </typeAliases>
    
        <!-- 无论是 MyBatis 在预处理语句(PreparedStatement)中设置一个参数时,还是从结果集中取出一个值时, 都会用类型处理器将获取的值以合适的方式转换成 
            Java 类型。 配置默认的处理器 -->
        <typeHandlers>
            <typeHandler handler="org.mybatis.example.ExampleTypeHandler" />
        </typeHandlers>
    
        <!-- MyBatis 每次创建结果对象的新实例时,它都会使用一个对象工厂(ObjectFactory)实例来完成。 -->
      <objectFactory type="org.mybatis.example.ExampleObjectFactory">
        <property name="someProperty" value="100"/>
      </objectFactory>
    
        <!-- MyBatis 允许你在已映射语句执行过程中的某一点进行拦截调用。 -->
        <plugins>
            <plugin interceptor="org.mybatis.example.ExamplePlugin">
                <property name="someProperty" value="100" />
            </plugin>
        </plugins>
        
        <!-- 配置环境 -->
        <environments default="development">
        
            <environment id="development">
                <!-- MyBatis 中有两种类型的事务管理器(也就是 type=”[JDBC|MANAGED]”) -->
                <transactionManager type="JDBC" />
                <!-- 配置数据库连接信息 -->
                <dataSource type="POOLED">
                    <property name="driver" value="com.mysql.jdbc.Driver" />
                    <property name="url" value="jdbc:mysql://localhost:3306/mybatis" />
                    <property name="username" value="root" />
                    <property name="password" value="123456" />
                </dataSource>
            </environment>
        </environments>
    
        <!-- MyBatis 可以根据不同的数据库厂商执行不同的语句,这种多厂商的支持是基于映射语句中的 databaseId 属性。 -->
        <databaseIdProvider type="DB_VENDOR">
            <property name="SQL Server" value="sqlserver" />
            <property name="DB2" value="db2" />
            <property name="Oracle" value="oracle" />
        </databaseIdProvider>
        
        <!-- 注册 UserMapper.xml 文件 -->
        <mappers>
            <mapper resource="UserMapper.xml" />
        </mappers>
    
    </configuration>
  • 相关阅读:
    041_form表单重置数据reset()
    040_下拉列表的显示与提交数值时,需要用到转义字符
    039_如何选取checkbox的id值?
    011_表单数据非空验证
    010_@ResposBody错误
    010_页面单击按钮失灵
    使用Maven创建 web项目
    java设计模式(八) 适配器模式
    设计模式 6大设计原则
    Java设计模式(七) 模板模式-使用钩子
  • 原文地址:https://www.cnblogs.com/virgosnail/p/10034459.html
Copyright © 2011-2022 走看看