mybatis-3-核心配置文件

全局配置文件:mybatis-config.xml

image-20210427145902602

1、引入外部配置文件(properties)

date.properties外部配置文件

driver = com.mysql.cj.jdbc.Driver
url = jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=utf-8
username = root
password = 123456

mybatis-config.xml

<properties resource="date.properties"/>

2、settings设置

主要设置

image-20210427150420479

mybatis-config.xml

<settings>
    <!--打开mybatis的日志-->
    <setting name="logImpl" value="STDOUT_LOGGING"/>
</settings>

3、typeAliases别名处理器

为 Java 类型设置一个短的名字,可以方便我们 引用某个类。

mybatis-config.xml

<typeAliases>
    <!--typeAlias是自定义别名-->
    <typeAlias type="com.wang.Dao.StudentMapper" alias="studentMapper"/>
    <!--package是为这个包下的类都创建一个开头小写的别名-->
    <package name="com.wang.Pojo"/>
</typeAliases>

也可以用注解

@Alias("emp")
public class Employee{}

4、typeHandlers类型处理器

无论是 MyBatis 在预处理语句(PreparedStatement)中 设置一个参数时,还是从结果集中取出一个值时, 都会 用类型处理器将获取的值以合适的方式转换成 Java 类型。

image-20210427151857434

5、plugins插件

插件是MyBatis提供的一个非常强大的机制,我们 可以通过插件来修改MyBatis的一些核心行为。插 件通过动态代理机制,可以介入四大对象的任何 一个方法的执行。后面会有专门的章节我们来介 绍mybatis运行原理以及插件

  • Executor (update, query, flushStatements, commit, rollback, getTransaction, close, isClosed)

  • ParameterHandler (getParameterObject, setParameters)

  • ResultSetHandler (handleResultSets, handleOutputParameters)

  • StatementHandler (prepare, parameterize, batch, update, query)

6、environments环境

MyBatis可以配置多种环境,比如开发、测试和生 产环境需要有不同的配置,

每种环境使用一个environment标签进行配置并指 定唯一标识符,

可以通过environments标签中的default属性指定 一个环境的标识符来快速的切换环境。

mybatis-config.xml

    <environments default="development">
        <environment id="development">
            <!--transactionManager事务管理器,JDBC|MANAGED|自定义,-->
            <!--JDBC:使用了JDBC的提交和回滚设置-->
            <!--MANAGED:不提交或回滚一个连接,让容器来管理事务的整个生命周期-->
            <transactionManager type="JDBC"/>
            <!--dataSource数据源,UNPOOLED|POOLED|JNDI|自定义-->
            <!--UNPOOLED:不使用连接池-->
            <!--POOLED:使用连接池-->
            <!--JNDI: 在EJB 或应用服务器这类容器中查找指定的数据源-->
            <dataSource type="POOLED">
                <property name="driver" value="${driver}"/>
                <property name="url" value="${url}"/>
                <property name="username" value="${username}"/>
                <property name="password" value="${password}"/>
            </dataSource>
        </environment>
    </environments>

7、databaseIdProvider环境

MyBatis 可以根据不同的数据库厂商执行不同的语句。

mybatis-config.xml

<!--type=BD_VENDOR是固定值-->
<databaseIdProvider type="BD_VENDOR">
    <!--name:数据库厂商标识,value:为数据库起一个别名,方便后来的sql语句使用databaseld属性引用-->
    <property name="MySQL" value="mysql"/>
    <property name="Oracle" value="oracle"/>
    <property name="SQL Server" value="sqlserver"/>
</databaseIdProvider>

sql映射配置文件中调用

image-20210427153151266

8、mapper映射

mybatis-config.xml

<mappers>
    <!--xml配置文件映射注册-->
    <mapper resource="Mapper/StudentMapper.xml"/>
    <mapper resource="Mapper/TeacherMapper.xml"/>
    <!--注解映射注册-->
    <mapper class="com.wang.Dao.StudentMapper"/>
    <!--批量注册:这种方式要求SQL映射文件名必须和接口名相同并且在同一目录下-->
    <package name="com.wang.Dao"/>
</mappers>
posted @ 2021-06-07 16:03  Coder-Wang  阅读(91)  评论(0编辑  收藏  举报