标签:res mybatis 事务 指定 作用 ssi com 文件包含 java类
配置mybatis-config.xml
MyBatis的配置文件包含了会深深影响MyBatis行为的设置和属性信息,xml文件标签要按照以下顺序排列
environments元素定义了如何配置环境,MyBatis可以配置多种环境
注:尽管可以配置多个环境,但每个SqlSessionFactory实例只能选择一种环境
MyBatis中有两种类型的事务管理器:type="[JDBC|MANAGED]"
MyBatis中有三种内建的数据源类型:type="[UNPOOLED|POOLED|JNDI]"
MyBatis默认的事务管理器是:JDBC,默认的数据源类型是:POOLED
属性可以在外部配置,并进行动态替换
可以在 Java 属性文件中配置属性,也可以在properties元素的子元素中配置
加载顺序:
通过方法参数传递的属性具有最高优先级,resource/url属性中指定的配置文件次之,最低优先级的是properties元素中指定的属性
类型别名:
可为Java类型设置一个缩写名字,仅用于XML配置
<typeAliases>
<!--给类设置别名-->
<typeAlias type="com.believe.pojo.User" alias="user" />
</typeAliases>
可以指定一个包名,MyBatis会在包名下面搜索需要的Java Bean,在包中的Java Bean,在没有注解的情况下,会使用 Bean 的首字母小写的非限定类名来作为它的别名,若有注解,则别名为其注解值
<typeAliases>
<!--指定包路径-->
<package name="com.believe.pojo"/>
</typeAliases>
//注解
@Alias("pojo")
public class User {}
作用:降低冗余的全限定类名书写
MyBatis中极为重要的调整设置,它们会改变MyBatis的运行时行为
error:MapperRegistry,没有注册绑定Mapper文件
方式一:(推荐使用)
<!--使用相对于类路径的资源引用-->
<mappers>
<mapper resource="org/mybatis/builder/AuthorMapper.xml"/>
</mappers>
方式二:
<!--使用完全限定资源定位符(URL)-->
<mappers>
<mapper url="file:///var/mappers/AuthorMapper.xml"/>
</mappers>
方式三:(不建议使用)
<!--使用映射器接口实现类的完全限定类名-->
<mappers>
<mapper class="org.mybatis.builder.AuthorMapper"/>
</mappers>
注:
方式四:
<!--将包内的映射器接口实现全部注册为映射器-->
<mappers>
<package name="org.mybatis.builder"/>
</mappers>
注:
注:每一个Mapper.xml都需要在mybatis核心配置文件注册
作用域、生命周期是至关重要的,因为错误的使用会导致严重的并发问题
SqlSessionFactoryBuilder
SqlSessionFactoryBuilder实例的最佳作用域是方法作用域(也就是局部方法变量)
一旦创建了SqlSessionFactory,就不再需要它了
SqlSessionFactory
SqlSessionFactory的最佳作用域是应用作用域
一旦被创建就应该在应用的运行期间一直存在
SqlSession
SqlSession的最佳的作用域是请求或方法作用域
每个线程都应该有它自己的SqlSession实例
SqlSession的实例不是线程安全的,因此是不能被共享的
标签:res mybatis 事务 指定 作用 ssi com 文件包含 java类
原文地址:https://www.cnblogs.com/thetree/p/04_mybatis.html