mybatis配置文件(properties、typeAliases、mappers( resource、class、url、package))

1、properties:读取文件信息

(1)jdbc配置文件:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/stu_mangement
jdbc.username=root
jdbc.password=root

(2)核心配置文件:

环境:可以配置多个,每次只能选择一个

<environments default="development">
        <environment id="development">

事务管理器(JDBC、MANAGED):这个配置直接使用了 JDBC 的提交和回滚设施,它依赖从数据源获得的连接来管理事务作用域,默认的是JDBC

<transactionManager type="JDBC" />

指定jdbc文件的位置:

<properties resource="jdbc.properties"/>

还可以包含值:当外部和内部的相同时,优先使用外部的配置

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

读取文件内容:

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

2、typeAliases:类型别名

(1)配置前:需要写类的全路径

    <select id="findStudentBysname" parameterType="String" resultType="pers.zhb.pojo.Student">
        select * from student where sname like "%"#{value}"%"
    </select>

(2)配置别名后:

核心配置文件:

<typeAliases>
        <typeAlias type="pers.zhb.pojo.Student" alias="Student"/>
</typeAliases>

student.xml:

    <select id="findStudentBysname" parameterType="String" resultType="Student">
        select * from student where sname like "%"#{value}"%"
    </select>

如果同一包下有多个pojo采用上面的方法显然是不行的,下面的配置可以扫描该包及其子包下的所有pojo,扫描包下的实体类,名称与类的名称相同

<typeAliases>
        <package name="pers.zhb.pojo"></package>
</typeAliases>
 <select id="findStudentById" parameterType="Integer" resultType="Student">
        select * from student where studentno = #{v}
 </select>

 第一种可以自定义别名,但是第二种不行(可以通过在实体类中增加注解的方式来实现)

@Alias("hello")
public class Student implements Serializable {
    private static final long serialVersionUID = 1L;
    private String studentno;
    private String sname;

3、mappers:映射器

(1) <mapper resource=" " />

    <mappers>
        <mapper resource="sqlmap/student.xml"/>
    </mappers>

直接指定文件的路径即可,以 / 分隔路径

(2) <mapper class=""/>:通过类注册

<mappers>
        <mapper class="pers.zhb.mapper.StudentMapper"/>
</mappers>

注意:要求mapper接口名称和mapper映射文件名称相同,且放在同一个目录中。

(3)<package url=""/>

指定文件的完全路径。

(4)package属性:

<mappers>
        <package name="pers.zhb.mapper"></package>
</mappers>

 注意:要求mapper接口名称和mapper映射文件名称相同,且放在同一个目录中。

4、mybatis的设置

这是 MyBatis 中极为重要的调整设置,它们会改变 MyBatis 的运行时行为。

原文地址:https://www.cnblogs.com/zhai1997/p/12530641.html