羊山码农 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
    关注

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

    评论

报告相同问题?

悬赏问题

  • ¥50 易语言把MYSQL数据库中的数据添加至组合框
  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况