关于mybatis:Mybatis深入理解

9次阅读

共计 2049 个字符,预计需要花费 6 分钟才能阅读完成。

​1、外围配置文件

mybatis-config.xml
MyBatis 的配置文件蕴含了会深深影响 MyBatis 行为的设置和属性信息。配置文档的顶层构造如下:configuration(配置)perties(属性)settings(设置)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境配置)environment(环境变量)dataSource(数据源)transactionManager(事务管理器)databaseIdProvider(数据库厂商标识)mappers(映射器)

2、环境配置
mybatis 能够配置成适应多种环境
不过要记住:只管能够配置多个环境,然而每个 SqlSessionFactory 实例只能抉择一种环境
Mybatis 默认的事务管理器就是 JDBC,连接池:POOLED
3、属性(properties)
咱们能够通过 properties 属性来实现援用配置文件
这些属性能够在内部进行配置,并能够进行动静替换。你既能够在典型的 Java 属性文件中配置这些属性,也能够在 properties 元素的子元素中设置。【db.roperties】
编写配置文件:db.propeties

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&charsetEncoding=UTF-8
username=root
password=root

在外围配置文件中引入

 <properties resource="db.properties">
        <property name="username" value="root"/>
        <property name="password" value="root"/>
 </properties>

能够间接引入内部配置文件
能够在其中减少以下属性配置
如果两个文件有同一个字段,优先应用内部配置文件的!
4、类型别名(typeAliases)
类型别名可为 Java 类型设置一个缩写名字,它仅用于 XML 配置,意在升高冗余的全限定类名书写

 <!-- 类型命名 能够给实体类起别名 -->
    <!--<typeAliases></typeAliases>-->
    <typeAliases>
        <typeAlias type="com.aostarit.entity.User" alias="User"/>
    </typeAliases>

也能够指定一个包名,Mybatis 会在包名上面搜寻须要的 Java Bean, 比方:扫描实体类的包,

它的默认别名就是这个类的类名,首字母小写(大写能够,倡议小写)!

  <typeAliases>
       <!-- <typeAlias type="com.aostarit.entity.User" alias="User"/>-->
        <package name="com.aostarit.entity"/>
    </typeAliases>

在实体类比拟少的时候,应用第一种形式,否则倡议应用第二种

如果实体类有注解,则别名为其注解值

@Alias("User")
public class User {}

5、设置(settings)

6、其它配置

typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)mybatis-generator-core
mybatis-plus
通用 mapper

7 隐射器 (mappers)
MapperRegistry: 注册绑定咱们的 Mapper 文件:
形式一(举荐应用):

<!-- 映射器 -->
<mappers>
    <mapper resource="mapper/UserMapper.xml"/>
</mappers>

应用二: 应用 class 文件绑定注册

 <mappers>
       <!-- <mapper resource="mapper/UserMapper.xml"/>-->
        <mapper class="com.aostarit.dao.UserMapper"/>
</mappers>

留神点:
接口和它的 mapper 配置文件必须同名
接口和它的 mapper 配置文件必须在同一个包下
形式三:应用扫描包进行注入绑定

<mappers>
       <!-- <mapper resource="mapper/UserMapper.xml"/>-->
       <!-- <mapper class="com.aostarit.dao.UserMapper"/>-->
       <package name="com.aostarit.dao"/>
</mappers>

留神点:
接口和它的 mapper 配置文件必须同名
接口和它的 mapper 配置文件必须在同一个包下
将数据库配置文件内部引入
实体类别名
保障 UserMapper 接口和 UserMapper.xml 改为统一!并且放在同一个包下

正文完
 0