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()
常用于多数据查询,且需要对查询结果进行筛选的情况