Mybatis基础(3)-关于配置文件的介绍

1. 在MyBatis的核心配置文件中引入外部的properties文件

有时候需要将外部的与连接数据库相关的参数(比如数据库密码等),毕竟连接外部文件的话以后修改就只需要修改外部文件;
一般在核心配置文件中通过标签<properties>调用;如下:

   <properties resource="JDBC.properties"/>

然后在<dataSource><property>标签的value中填写即可,如下填写方式:(配置文件用键值对的方式进行书写)

 <dataSource type="POOLED">
                <property name="driver" value="${drive}"/>
                <property name="url" value="${url}"/>
                <property name="username" value="${username}"/>
                <property name="password" value="${password}"/>
            </dataSource>

注意点:这些标签,如<properties>都是有放置顺序的,如果顺序出错,就会报错;下面就是报错的内容;

还有就是在<properties>标签中,还有一个property标签,这个标签可以用来设置键值对,就和外部文件的设置方法一样,但是在<dataSource>标签中使用时,优先会调用外部文件,只是说如果外部文件不存在这个参数的情况下,内部属性定义也是可以的;如下:

2. MyBatis中别名的设置

就像是之前博客学习的一样,很多的地方其实名字很负责,因为很多地方都需要完整的路径,但是这里有一个创建别名的方法,也就是说可以不需要每一次都写那么长的路径,只需要使用自己设置好的别名,就可以指向特定的位置;

1. 主要使用到的标签

主要使用到的标签是 <typeAliases>,在这个标签里面有<typeAlias>标签,在这个标签里面进行别名的设置就可以;

    <typeAliases>
    <!--这个属性type填写的是完整的类名路径;alias表示自己设置的别名;-->
        <typeAlias type="dxs.pojo.User" alias="User"/>
   <!--在这里面还可以只是定义一个包名;-->
    </typeAliases>
---------------上面也可以是这样写---------------------------
     <typeAliases>
   <!--在这里面还可以只是定义一个包名;-->
        	<package name="dxs.pojo"/>
    </typeAliases>

就像是上面说的一样,可以定义一个包名,然后默认情况下,它的别名就是首字母小写;当然也可以通过注解进行设置,注解是@Alias();

3. 在MyBatis的核心配置文件中,环境的配置

这里的环境是指,你所连接的数据库环境;如下:

  <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="${drive}"/>
                <property name="url" value="${url}"/>
                <property name="username" value="${username}"/>
                <property name="password" value="${password}"/>
            </dataSource>
        </environment>
    </environments>

其中<environments>标签有一个叫做默认的属性(default),这个属性表示你当前使用的环境;可以这样理解,你可能有多个环境,不一定是连接这个数据库的,当你需要换其它的环境时,只需要修改这个default属性值就可以了;

  1. environment 标签的属性id,是用来给这个环境起名的,也就相当于一个区分符,防止环境之间互相冲突;
  2. transactionManager 标签中有两个type,一个是JDBC,还有一个是MANAGED;第一个是有数据的提交和回滚,第二个几乎没什么用,所以常用的就是第一个JDBC;
  3. dataSource标签中的type属性,默认值是POOLED;还有的属性值有:UNPOOLED(unpooled),JNDI;
    POOLED是一种类似于连接池的思想,如果有空闲的就返回空闲的连接,否则才创建一个新连接;
    UNPOOLED则是每一次都会有一个新的连接;
    JNDI网上有很多资料,讲的很乱,大致也是一种连接查询的方式;

4. 映射器Mapper

在Mybatis的核心配置文件中,需要使用<mappers>标签对实现了接口的Mapper.xml配置文件进行引入;使用的方式,有以下几种:

    <mappers>
        <mapper resource="UserMapper.xml"/>
    </mappers>

如果是resource属性的话,那么这个配置文件可以不用和接口放在一个包;


也可以如下地方方式引入:

     <mapper class="dxs.dao.UserMapper"/>

使用class属性时,必须要完整的路径;还有这个class里面只要名字就可以了,不需要添加后面的后缀;

4. MyBatis的SqlSession创建

在Mybatis中每个数据库代表一个SqlSessionFactory实例;
每一个SqlSession实例都可以看成是一次请求;一个SqlSessionFactory可以有多个SqlSession;
每一个SqlSession又可以获得不同的接口;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神秘的天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值