MyBatis 全局配置文件详解

时间:2021-05-06 04:48:03

MyBatis 全局配置文件详解

1.<environments> 和 <environment>

         environments:可以配置成适应多种环境下包含多个<environment>

environment:其中一种环境配置


2.<transactionManager> type属性的两种事务管理器类型

2.1 JDBC:通过JDBC来管理事务

2.2 MANAGED :通过容器来管理事务【spring】


3.<dataSource> type属性的三种内建数据源类型

3.1 POOLED:通过数据库连接池管理

3.2 UNPOOLED:不通过数据库连接池管理

3.3 JNDI:使用JNDI技术来获取到资源文件,在资源文件中配置相关属性


4.<mappers>标签的子标签及属性,此处需要讲解2个,另外两个在后面讲解

4.1 <mapper resource=””/>

<mappers>

  <mapper resource="cn/bjsxt/mapper/UserMapper.xml"/>

</mappers>

 

4.2         <mapper url=””/>

<mappers>

   <mapperurl="file:///D:\Users\Administrator\workspace\Mybatis\01mybatis\src\cn\bjsxt\mapper\UserMapper.xml"/>

</mappers>

 

5. Mapper.xml 映射文件中<mapper>的 namespace 简单讲解():

5.2 Namespace:命名空间,通过命名空间来找到具体要执行那个sql标签


6. <select>标签详解

6.1 id 属性 代表接口中的方法

6.2 parameterType属性

6.2.1 参数只有一个基本数据类型或String类型的参数

<selectid="selectUserById"parameterType="int"resultType="cn.bjsxt.pojo.User">

        select * from t_user where id = #{id}

</select>

 

6.2.2 对象类型参数

<updateid="updateUser"parameterType="cn.bjsxt.pojo.User">

            update t_user

            set name = #{name},

                pwd = #{pwd}

            where id = #{id}

</update>

 

6.2.3 Map类型参数

<selectid="selMap"parameterType="java.util.Map"resultType="user">

        select id,name,pwd,age from t_user

        where id = #{id}

</select>

 

6.2.4 如何在SQL命令中获取到传递的参数.#{}

6.3 resultType 属性

查询结果的返回类型

6.4 statementType 属性3个值

                            statementType:STATEMENT(非预编译),PREPARED(预编译)或CALLABLE中的任意一个。

这就告诉 MyBatis 分别使用Statement,PreparedStatement或者CallableStatement。

默认:PREPARED。这里显然不能使用预编译,要改成非预编译。


7 执行代码详解

7.1 SqlSession 是什么?有什么作用?

创建数据库会话,使用openSession()方法创建会话,可以执行多次sql语句。

7.2 三个查询方法讲解

selectList()

查询多条数据

selectOne()

查询一条数据

selectMap()

常用于多数据查询,且需要对查询结果进行筛选的情况