标签:路径 read 连接 首字母 有一个 jdbc OLE -- 实体类
MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息。 配置文档的顶层结构如下:
configuration(配置)
编写核心配置文件时,必须按照顺序进行
配置文件中的所有属性都可以在外部进行配置,并可以进行动态替换。
你既可以在典型的 Java 属性文件中配置这些属性,也可以在 properties 元素的子元素中设置。
示例:
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8
username=root
password=123456
<properties resource="db.properties">
<property name="password" value="111111"/>
</properties>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${user}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
注意:如果配置文件中和xml标签中出现同名的属性,优先使用文件的中的值
类型别名可为 Java 类型设置一个缩写名字。
它仅用于 XML 配置,意在降低冗余的全限定类名书写。
示例:
mybatis-config.xml
<!--方式一-->
<typeAliases>
<typeAlias type="com.pbx.pojo.User" alias="BruceUser"/>
</typeAliases>
<!--方式二-->
<typeAliases>
<package name="com.pbx.pojo"/>
</typeAliases>
方式一:
com.pbx.pojo.User
的地方使用 BruceUser
方式二:
@Alias(别名)
的注解,那么别名则为注解中定义的名称MyBatis 可以配置成适应多种环境,这种机制有助于将 SQL 映射应用于多种数据库之中
尽管可以配置多个环境,但每个 SqlSessionFactory 实例只能选择一种环境。
创建指定环境的SQLSessionFactory实例:
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, environment);
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, environment, properties);
事务管理器(transactionManager)
数据源(dataSource)
注册映射了SQL语句的文件
每个mapper.xml文件必须在mybatis-config.xml文件中注册
常用注册方式:
方式一:使用相对于类路径的资源引用
<mappers>
<mapper resource="org/mybatis/builder/AuthorMapper.xml"/>
<mapper resource="org/mybatis/builder/BlogMapper.xml"/>
<mapper resource="org/mybatis/builder/PostMapper.xml"/>
</mappers>
方式二:使用映射器接口实现类的完全限定名
<mappers>
<mapper class="org.mybatis.builder.AuthorMapper"/>
<mapper class="org.mybatis.builder.BlogMapper"/>
<mapper class="org.mybatis.builder.PostMapper"/>
</mappers>
方式三:包扫描模式,注册一个包下面的所有mapper.xml文件
<mappers>
<package name="org.mybatis.builder"/>
</mappers>
方式二和方式三注册的mapper.xml文件需要遵守命名规范,不然会找不到对应的文件
文件示例
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.mybatis.example.BlogMapper">
<select id="selectBlog" resultType="Blog">
select * from Blog where id = #{id}
</select>
</mapper>
namespace:用于标识唯一的mapper接口实现文件,值要为mapper接口文件的完全限定路径
id:需要绑定接口中的函数名
resultType:绑定函数的返回值类型
parameterType:参数类型
作用域和生命周期类别是至关重要的,错误的使用会导致非常严重的并发问题。
MyBatis运行流程图
SqlSessionFactoryBuilder (类似于JDBC中创建连接池的操作)
SqlSessionFactory(类似于JDBC中的连接池)
SqlSession (类似于JDBC中的连接数据库)
总结
标签:路径 read 连接 首字母 有一个 jdbc OLE -- 实体类
原文地址:https://www.cnblogs.com/primabrucexu/p/13937401.html