java for循环里面执行sql语句操作,有效结果只有一次,只执行了一次sql mybatis 循环执行update生效一次 实际只执行一次

简介: java后台controller中,for循环执行数据库操作,但是发现实际仅仅执行了一次,或者说提交成功了一次,并没有实际的个数循环 有可能是同一个对象导致的   可以仔细看一下下面两段代码有什么区别 ps:代码无实际意义,只为演示 Entity entity=null; for(i...

java后台controller中,for循环执行数据库操作,但是发现实际仅仅执行了一次,或者说提交成功了一次,并没有实际的个数循环

有可能是同一个对象导致的

 

可以仔细看一下下面两段代码有什么区别

ps:代码无实际意义,只为演示

Entity entity=null;
for(int i=0;i<5;i++){
                        
                         entity= new Entity();
                         entity.setId(i);
                         entity.setCreateTime(new Date());
                        boolean updateResult = Service.update( entity );
                    }

 

Entity entity = new Entity();
for(int i=0;i<5;i++){
                        entity.setId(i);
                        entity.setCreateTime(new Date());
                        boolean updateResult = Service.update(entity );
                    }

 

很明显上面是声明了一个引用,每一次都创建了一个新的对象,并执行update操作

下面是同一个对象,不断地改变赋值,然后执行了update操作

其结果截然不同:

上面的一段代码,会执行实际的次数,循环0,1,2,3,4    执行5次update

下面的代码仅仅只会执行一次,因为是同一个对象

所以如果循环里面,调用service,service调用了dao执行了sql,如果发现仅仅只是执行了一次,可以考虑怀疑是不是对象是同一个

目录
相关文章
|
1月前
|
SQL Oracle Java
sql文件批处理程序-java桌面应用
sql文件批处理程序-java桌面应用
25 0
|
26天前
Mybatis+mysql动态分页查询数据案例——分页工具类(Page.java)
Mybatis+mysql动态分页查询数据案例——分页工具类(Page.java)
21 1
|
1月前
|
SQL Java 应用服务中间件
Java项目防止SQL注入的四种方案
Java项目防止SQL注入的四种方案
37 0
|
26天前
Mybatis+mysql动态分页查询数据案例——工具类(MybatisUtil.java)
Mybatis+mysql动态分页查询数据案例——工具类(MybatisUtil.java)
15 1
|
30天前
|
Java 数据库连接 mybatis
mybatis简单案例源码详细【注释全面】——实体层(User.java)
mybatis简单案例源码详细【注释全面】——实体层(User.java)
13 0
|
26天前
|
SQL 存储 Kubernetes
Seata常见问题之mybatisplus的批量插入方法报SQL错误如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
25 0
|
30天前
|
SQL 安全 数据库
第三章用sql语句操作数据
第三章用sql语句操作数据
10 0
|
30天前
|
Java 数据库连接 mybatis
mybatis简单案例源码详细【注释全面】——Utils层(MybatisUtils.java)
mybatis简单案例源码详细【注释全面】——Utils层(MybatisUtils.java)
12 0
|
30天前
|
Java 数据库连接 mybatis
mybatis简单案例源码详细【注释全面】——测试层(UserMapperTest.java)
mybatis简单案例源码详细【注释全面】——测试层(UserMapperTest.java)
9 0
|
30天前
|
Java 数据库连接 mybatis
mybatis简单案例源码详细【注释全面】——实体层(Role.java)
mybatis简单案例源码详细【注释全面】——实体层(Role.java)
7 0