zoukankan      html  css  js  c++  java
  • 【MyBatis】XML配置的官网说明

    首先依旧附上官方文档:https://mybatis.org/mybatis-3/zh/configuration.html

    1.配置有哪些东东呢

     2.我的配置文件的命名(可以换成任意命名)

     3.导入properties资源

    • 首先读取在 properties 元素体内指定的属性。
    • 然后根据 properties 元素中的 resource 属性读取类路径下属性文件,或根据 url 属性指定的路径读取属性文件,并覆盖之前读取过的同名属性。
    • 最后读取作为方法参数传递的属性,并覆盖之前读取过的同名属性。

    环境配置

    MyBatis 可以配置成适应多种环境,这种机制有助于将 SQL 映射应用于多种数据库之中。

    不过要记住:尽管可以配置多个环境,但每个 SqlSessionFactory 实例只能选择一种环境。


    事务管理器

    在 MyBatis 中有两种类型的事务管理器(也就是 type="[JDBC|MANAGED]"):

    • JDBC – 这个配置直接使用了 JDBC 的提交和回滚设施,它依赖从数据源获得的连接来管理事务作用域。
    • MANAGED – 这个配置几乎没做什么。它从不提交或回滚一个连接,而是让容器来管理事务的整个生命周期(比如 JEE 应用服务器的上下文)。 默认情况下它会关闭连接。然而一些容器并不希望连接被关闭,因此需要将 closeConnection 属性设置为 false 来阻止默认的关闭行为

    数据源(dataSource)

    type="[UNPOOLED|POOLED|JNDI]"

    UNPOOLED– 这个数据源的实现会每次请求时打开和关闭连接。

    POOLED– 这种数据源的实现利用“池”的概念将 JDBC 连接对象组织起来,避免了创建新的连接实例时所必需的初始化和认证时间。 

    JNDI – 这个数据源实现是为了能在如 EJB 或应用服务器这类容器中使用,容器可以集中或在外部配置数据源,然后放置一个 JNDI 上下文的数据源引用。

    映射器(mappers)

    MapperRegistry:注册绑定我们的Mapper文件;

    方式一: 【推荐使用】

    <!--每一个Mapper.XML都需要在Mybatis核心配置文件中注册!-->
    <mappers>
       <mapper resource="com/kuang/dao/UserMapper.xml"/>
    </mappers>

    方式二:使用class文件绑定注册

    <!--每一个Mapper.XML都需要在Mybatis核心配置文件中注册!-->
    <mappers>
       <mapper class="com.kuang.dao.UserMapper"/>
    </mappers>

    注意点:

    • 接口和他的Mapper配置文件必须同名!

    • 接口和他的Mapper配置文件必须在同一个包下!

     

    方式三:使用扫描包进行注入绑定

    <!--每一个Mapper.XML都需要在Mybatis核心配置文件中注册!-->
    <mappers>
       <package name="com.kuang.dao"/>
    </mappers>

    注意点:

    • 接口和他的Mapper配置文件必须同名!

    • 接口和他的Mapper配置文件必须在同一个包下

    类型别名(typeAliases)

    • 类型别名是为 Java 类型设置一个短的名字。‘

    • 存在的意义仅在于用来减少类完全限定名的冗余。

        <!--可以给实体类起别名-->
       <typeAliases>
           <typeAlias type="com.kuang.pojo.User" alias="User"/>
       </typeAliases>

    也可以指定一个包名,MyBatis 会在包名下面搜索需要的 Java Bean,比如:

    扫描实体类的包,它的默认别名就为这个类的 类名,首字母小写!

    <!--可以给实体类起别名-->
    <typeAliases>
       <package name="com.kuang.pojo"/>
    </typeAliases>

     

    在实体类比较少的时候,使用第一种方式。

    如果实体类十分多,建议使用第二种。

    第一种可以DIY别名,第二种则·不行·,如果非要改,需要在实体上增加注解

    @Alias("user")
    public class User {}
  • 相关阅读:
    怎么样使图片高度与宽度成比例自适应
    css文本溢出隐藏显示省略号(单行+多行)
    Monkey脚本API简介
    Monkey自动化测试
    MonkeyRunner自动化测试
    Shell逐行读取文件的3种方法
    shell脚本中调用其他脚本的三种方法
    CPU测试--通过proc获取CPU信息
    CPU测试--查看cpu占用率
    shell脚本如何获取当前时间
  • 原文地址:https://www.cnblogs.com/cckong/p/14321483.html
Copyright © 2011-2022 走看看