若依框架之批量删除或修改的前后端总结

若依新手,把自己觉得有意义的记录一下,欢迎大家指正~

批量删除或修改的语句相差不多,因为我这次做的是修改,所以就以修改为例了~

1.前端vue页面   按钮  点击修改

<el-button
  type="success"
  plain
  icon="el-icon-edit"
  size="mini"
  @click="submitFs"
>复修改</el-button>

2.前端  修改方法

submitFs(row) {
  const ids = row.id || this.ids
  fushenPl(ids);
},

获取一下选择的数据,然后传到后台进行处理,获取方法如下

3.前端  多项选择方法

handleSelectionChange(selection) {
  this.ids = selection.map(item => item.id)
  this.names = selection.map(item => item.nickName)
  this.single = selection.length!==1
  this.multiple = !selection.length
},

使用map把选择的多条数据连到一起,以逗号的方式隔开,后续用到的时候,再分开

4.前端 js方法

export function fushenPl(id) {
  return request({
    url: '/accreditation/fushenPl'+id,
    method: 'put',
  })
}

5.后端   controller层

@GetMapping("/fushenPl/{ids}")
   public AjaxResult fushenPl(@PathVariable String[] ids)
   {
       return toAjax(bmRendingService.fushenPlBmRendingByIds(ids));
   }

因为service,serviceImpl,mapper层都没有什么改动,所以省略了

6.后端  mapper.xml层

<update id="fushenPlBmRendingByIds" parameterType="String">
    update bm_rending  set SHENBAO_STATE = '1' where id in
    <foreach item="id" collection="array" open="(" separator="," close=")">
        #{id}
    </foreach>
</update>

其实才到重点,就这个  foreach    就是sql里的in方法,主要注意这个写法,不要写错。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Spring Boot是一个用于创建独立的、基于Spring的应用程序的框架,而MyBatis是一个持久层框架,用于与数据库进行交互。结合使用Spring Boot和MyBatis可以方便地实现批量修改操作。 要实现批量修改,可以按照以下步骤进行操作: 1. 配置数据库连接:在Spring Boot的配置文件中配置数据库连接信息,包括数据库URL、用户名、密码等。 2. 创建实体类:创建与数据库表对应的实体类,并使用注解标记实体类与数据库表的映射关系。 3. 创建Mapper接口:创建一个Mapper接口,用于定义数据库操作的方法。在方法上使用注解标记SQL语句,并使用@Param注解指定参数名称。 4. 创建Mapper.xml文件:在resources目录下创建一个与Mapper接口对应的Mapper.xml文件,编写SQL语句。 5. 使用批量修改方法:在Mapper接口中定义一个批量修改的方法,使用@UpdateProvider注解标记该方法,并在对应的Mapper.xml文件中编写批量修改的SQL语句。 6. 调用批量修改方法:在业务逻辑层或控制器中调用批量修改的方法,传入需要修改的数据。 下面是一个示例代码: ```java // 实体类 public class User { private Long id; private String name; // 省略getter和setter方法 } // Mapper接口 @Mapper public interface UserMapper { @UpdateProvider(type = UserSqlProvider.class, method = "updateBatch") void updateBatch(@Param("users") List<User> users); } // Mapper.xml文件 public class UserSqlProvider { public String updateBatch(Map<String, Object> map) { List<User> users = (List<User>) map.get("users"); StringBuilder sb = new StringBuilder(); sb.append("UPDATE user SET name = CASE id "); for (User user : users) { sb.append("WHEN ").append(user.getId()).append(" THEN '").append(user.getName()).append("' "); } sb.append("END WHERE id IN ("); for (User user : users) { sb.append(user.getId()).append(","); } sb.deleteCharAt(sb.length() - 1); sb.append(")"); return sb.toString(); } } // 调用批量修改方法 @Service public class UserService { @Autowired private UserMapper userMapper; public void updateBatch(List<User> users) { userMapper.updateBatch(users); } } ``` 相关问题: 1. 什么是Spring Boot? 2. 什么是MyBatis? 3. 如何配置数据库连接信息? 4. 如何创建实体类与数据库表的映射关系? 5. 如何编写Mapper接口和Mapper.xml文件? 6. 如何调用批量修改方法?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值