Mybatis-Plus怎么根据name去修改整条数据
时间: 2023-12-06 19:45:00 浏览: 29
使用Mybatis-Plus框架可以通过以下步骤根据name去修改整条数据:
1. 在实体类中定义name属性,并在对应的Mapper接口中编写对应的方法。
```java
public class User {
private Long id;
private String name;
private Integer age;
// 省略getter和setter
}
public interface UserMapper extends BaseMapper<User> {
int updateByName(@Param("name") String name, @Param("user") User user);
}
```
2. 在Mapper接口中编写updateByName方法,使用@Param注解为参数取别名,方便在SQL语句中引用。
```xml
<update id="updateByName" parameterType="java.util.Map">
update user
<set>
<if test="user.name != null">name=#{user.name},</if>
<if test="user.age != null">age=#{user.age},</if>
</set>
where name=#{name}
</update>
```
3. 在Service层中调用Mapper接口中的updateByName方法。
```java
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public boolean updateByName(String name, User user) {
int updateCount = userMapper.updateByName(name, user);
return updateCount > 0;
}
}
```
4. 调用Service层中的updateByName方法,传入name和需要更新的User对象即可更新整条数据。
```java
userService.updateByName("Tom", new User(1L, "Jerry", 18));
```