MyBatis 四--查询所有
配置文件完成增删改查
1、编写接口方法:Mapper接口
观察参数
返回结果
2、编写SQL语句:SQL映射文件;
3:执行方法,测试
查询所有
1 、
2、
3、
package test; import mapper.BrandMapper; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import org.junit.Test; import pojo.Brand; import java.io.IOException; import java.io.InputStream; import java.util.List; public class MyBatisTest { @Test public void test_SelectAll() throws IOException { //1获取sqlSessionFactory String resource = "mybatis-config.xml"; //配置文件 InputStream inputStream = Resources.getResourceAsStream(resource); //传入流 SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); //返回对象 //2 获取sqlSession 对象 SqlSession sqlSession = sqlSessionFactory.openSession(); //3 获取Mapper接口的代理对象 BrandMapper brandMapper = sqlSession.getMapper(BrandMapper.class); //4 执行方法 List<Brand> brands = brandMapper.selectAll(); System.out.println(brands); //5 释放资源 sqlSession.close(); } }
遇到的问题:数据库表的名称和实体类的属性不一样就需要手动封装。
解决办法:
1、写sql语句时加上别名,别名和实体类属性名一样
2、引入sql片段
3:、运用resultMap,
需要将select标签里面的resultType改为resultMap