接口绑定方案
根据昨天的内容的补充
三个常用的查询方案
selectList("命名空间.id")
selectList("命名空间.id",sql语句的实参)
session.selectOne("命名空间.id");
session.selectOne("命名空间.id",sql语句的实参);
session.selectMap("命名空间.id","作为key的字段名")
session.selectMap("命名空间.id",sql语句的实参,"作为key的字段名")
public static void main(String[] args) throws IOException {
//1.加载mybatis的核心配置文件
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//2.构建SqlSessionFactory
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
//3.根据工厂构建回话
SqlSession session = factory.openSession();
//4.执行sql,得到结果
List<Dept> list = session.selectList("com.yjxxt.mappers.DeptMapper.queryAll");
Dept dept = session.selectOne("com.yjxxt.mappers.DeptMapper.queryDeptByNo",20);
Map<String,Dept> map = session.selectMap("com.yjxxt.mappers.DeptMapper.queryAll","dname");
//5.处理结果
list.forEach(System.out::println);
System.out.println(dept);
System.out.println(map);
//5.关闭回话
session.close();
}
resultType : 结果类型
基本数据类型|包装类 String Date Javabean List Map
parameterType : 入参类型
基本数据类型|包装类 String Date Javabean 数组 List Map
新知识
对mybatis核心配置文件实现软编码
准备的资源文件代码 db.properties
driver=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@localhost:1521:XE
username=SCOTT
password=TIGER
在核心配置文件中要引用这个文件的字段要先导入资源文件
<properties resource="db.properties" />
使用字段要使用${}在代表引用字段
代码如下
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<!--根元素: 核心配置-->
<configuration>
<!-- 加载外部的properties文件 -->
<properties resource="db.properties" />
<!--配置别名,别名不区分大小写-->
<typeAliases>
<package name="com.yjxxt.pojo"/>
</typeAliases>
<!--环境配置-->
<environments default="ev">
<environment id="ev">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${dri