SqlSessionFactoryBuilder是利用XML或者Java代码来获得资源并构建SqlSessionFactory。
通过SqlSessionFactoryBuilder可以构建一个SqlSessionFactory。
SqlSessionFactoryBuilder的作用就是一个构建器。
import java.io.IOException;
import java.io.Reader;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
/**
* 这是一个测试类,对数据库中的数据进行操作看是否成功。
* */
public class App {
//向上抛出异常对象
public static void main(String[] args) throws IOException {
// 第一步,读取资源文件,获得一个字符读入流对象。
//MybatisConfig.xml是写的Config的主配置文件
Reader is = Resources.getResourceAsReader("MybatisConfig.xml");
// 第二步:创建一个数据库会话工厂并调用它的建造方法,建造方法调用到读取资源的对象,并且赋值给了数据库工厂
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
// 3.用sqlsession工厂对象打开session会话,获得session对象
SqlSession session = sqlSessionFactory.openSession();
// 4.用session对象调用相应的操作数据库的方法,并执行。
//这里的Bingbing是实体类,在里面对数据库中的字段进行封装。
//com.zhiyuan.candy.Demo2_Mapper.代表的是Mapper映射文件的全路径,在后面加一个‘.’是为了与别的字符隔开。
//GetBingAge:是Mapper映射文件中的id值,代表唯一标识符
Bingbing users = (Bingbing) session.selectOne("com.zhiyuan.candy.Demo2_Mapper." + "GetBingAge");
//第五步:使用if判断来判断是否拿到值了,拿到了就输出拿到的表中语句没拿到就输出 noFrankterweiked
if (users != null) {
System.out.println(users);
}
}
}
这是个测试类,目的:测试MyBatis从数据库中是否拿到了查询的数据库中的值。