羊山码农 2015-08-07 02:57 采纳率: 0%
浏览 2147

mybatis操作oracle数据库查询所有user,结果为什么是最后一条数据的重复?

数据库数据
ID NAME AGE
21 JXL 23
22 fqd 26
23 ymm 21
1 aaa 18
2 bbb 20
3 ccc 19
10 htz 20

userMapper.xml

select * from user2

测试
public void testAll()
{

     SqlSession sqlSession = MyBatisUtil.getSqlSession();
        /**
         * 映射sql的标识字符串,
         * me.gacl.mapping.userMapper是userMapper.xml文件中mapper标签的n  amespace属性的值,
         * getAllUsers是select标签的id属性值,通过select标签的id属性值就可以找到要执行的SQL
         */
        String statement = "com.inspur.mapping.userMapper.getAllUsers";//映射sql的标识字符串
        //执行查询操作,将查询结果自动封装成List<User>返回
        List<User> lstUsers = sqlSession.selectList(statement);
        //使用SqlSession执行完SQL之后需要关闭SqlSession
        for(User user:lstUsers){
            System.out.println(user.getName());
        }
        sqlSession.close();
        System.out.println(lstUsers);

}
public static void main(String[] args) 
{
    TestCRUDByXmlMapper t = new TestCRUDByXmlMapper();
    //t.testAdd();
    //t.testDel();
    //t.testUpd();
    t.testAll();//为什么查出来的两条结果内容相同?
}

但是控制台的结果是:
htz
htz
htz
htz
htz
htz
htz

这显然不是想要的结果,求大神告知这是为什么啊?


<!-- 根据id查询一个用户 -->

select * from user2 where id=#{id}

<!-- 创建用户 -->

insert into user2(id,name,age) values(#{id},#{name},#{age})

<!-- 删除用户 -->

delete from user2 where id=#{id}

<!-- 更新用户 -->

update user2 set name=#{name},age=#{age} where id=#{id}

<!-- 查询所有用户 -->

select * from user2

  • 写回答

3条回答

  • 馥影 2015-08-07 03:40
    关注

    取数据的语句有问题,覆盖了前面的数据

    评论

报告相同问题?

悬赏问题

  • ¥15 数据库数据成问号了,前台查询正常,数据库查询是?号
  • ¥15 算法使用了tf-idf,用手肘图确定k值确定不了,第四轮廓系数又太小才有0.006088746097507285,如何解决?(相关搜索:数据处理)
  • ¥15 彩灯控制电路,会的加我QQ1482956179
  • ¥200 相机拍直接转存到电脑上 立拍立穿无线局域网传
  • ¥15 (关键词-电路设计)
  • ¥15 如何解决MIPS计算是否溢出
  • ¥15 vue中我代理了iframe,iframe却走的是路由,没有显示该显示的网站,这个该如何处理
  • ¥15 操作系统相关算法中while();的含义
  • ¥15 CNVcaller安装后无法找到文件
  • ¥15 visual studio2022中文乱码无法解决