|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
我在java web开发中想通过mybatis实现一个分页功能,但是在测试中查询出来的结果是空的,在datagrip中是可以查询出来的。想请问是哪一步错了。
MybatisConfig.xml- <select id="selectByPage" resultType="edu.zjku.bean.Blog" parameterType="int">
- select * from blog limit #{param1},#{param2}
- </select>
复制代码
BlogMapper- List<Blog> selectByPage(int pageNumber,int linesPerPage);
复制代码
BlogService- List<Blog> selectByPage(int pageNumber,int linesPerPage);
复制代码
BlogServiceImpl- @Override
- public List<Blog> selectByPage(int pageNumber,int linesPerPage) {
- List<Blog> list = null;
- InputStream is = null;
- SqlSession sql = null;
- try {
- is = Resources.getResourceAsStream("mybatisConfig.xml");
- SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
- sql = sqlSessionFactory.openSession(true);
- BlogMapper mapper = sql.getMapper(BlogMapper.class);
- list = mapper.selectByPage((pageNumber-1)*linesPerPage,linesPerPage);
- } catch (IOException e) {
- e.printStackTrace();
- if (sql != null) {
- sql.close();
- }
- if (is != null) {
- try {
- is.close();
- } catch (IOException ioException) {
- ioException.printStackTrace();
- }
- }
- }
- return list;
- }
复制代码
BlogTest- //分页查询测试
- List<Blog> list = null;
- int pageNum = 1;
- int linesPerPage = 3;
- list = service.selectByPage(pageNum, linesPerPage);
- for (Blog blog : list){
- blog.toString();
- }
复制代码
从你提供的代码来看,可能出现错误的地方有以下几点:
1. MybatisConfig.xml配置文件问题:你在提问中给出的MybatisConfig.xml文件中只有一个简单的SQL语句,这是不完整的。通常情况下,你需要在MybatisConfig.xml中配置数据源、映射文件路径等信息。请确保MybatisConfig.xml配置文件正确,并且已经包含了合适的映射文件。
2. BlogMapper接口问题:请确保BlogMapper接口中定义的方法名称和参数与数据库中的表和字段对应。
3. BlogMapper.xml映射文件问题:请仔细检查BlogMapper.xml映射文件中SQL查询语句是否正确,并且参数位置、名称是否与接口中的方法一致。
4. 数据库连接问题:请确保数据库连接配置正确,并且数据库中是否存在符合查询条件的数据。
另外,你在测试代码中使用了`for (Blog blog : list){ blog.toString(); }`来遍历结果集,但是并没有输出,我假设你想要打印出结果,可以修改为`for (Blog blog : list){ System.out.println(blog.toString()); }`。
如果你仍然无法解决问题,请提供更多的信息和错误提示,以便我们更好地帮助你解决问题。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
|
|