目录
介于已经完成mybatis测试,我们用一张图来回顾mybatis的执行流程,加深印象
1、根据id查询数据
1、在Demo_User_Mappe接口中添加代码
添加代码如下
public interface Demo_User_Mapper {
//测试查询表数据,查询多个数据用List集合
public List<Demo_User> findA();//把Demo_User类作为对象封装到list集合,方法名findA
/**
* 1、测试id查询数据,查询一个数据用对象.
* 2、因为数据库的demo_user表中的id是int类型,所以要把int类型的参数传递过去
*/
Demo_User findid(int id);
}
2、在映射文件中添加代码
添加代码如下:
<!-- 1、id绑定接口中的方法名
2、parameterType是参数类型,传递过来的参数类型是int
3、mybatis规定,xml映射文件获取参数要用 #{}
-->
<select id="findid" parameterType="int" resultType="com.gt.pojo.Demo_User">
select * from demo_user where id = #{id}
</select>
3、测试类中添加代码
添加代码如下:
/**
* 根据id查询数据
*/
@Test
public void findId() throws IOException {
//指定要加载的xml配置文件路径
String resource = "mybatis_xml/mybatis.xml";
//通过io流获取资源加载
InputStream inputStream = Resources.getResourceAsStream(resource);
//通过SqlSessionFactoryBuilder动态的生成SqlSessionFactory
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//有了 SqlSessionFactory,我们可以从中获得 SqlSession 的实例,
//可以把SqlSession看成获取的是数据库链接
SqlSession session = sqlSessionFactory.openSession();
//获取Demo_User_Mapper接口
Demo_User_Mapper mapper = session.getMapper(Demo_User_Mapper.class);
int id = 3;
Demo_User demoUser = mapper.findid(id);
System.out.println(demoUser);
session.close();
}
运行测试方法后结果:
补充说明:
因用同学反应数据库连接不上去,其他的和我都是一样的,就是运行不了
1、驱动: 该项目中使用的驱动5.8以上版本都行
2、Mysql数据库: 使用5.5版本以上的
3、MariadbDB数据库: 最好也是5.5以上的