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个回答

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

qq_24483127
羊山码农 能具体说说吗?大神
接近 5 年之前 回复

mapper文件贴出来看看

qq_24483127
羊山码农 贴了
接近 5 年之前 回复

能把xml贴出来看看吗?

qq_24483127
羊山码农 贴了啊
接近 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐