方案一:修改全局更新策略(不推薦)
mybatis-plus:
global-config:
#字段策略 IGNORED:"忽略判斷"、NOT_NULL:"非NULL判斷"、NOT_EMPTY:"非空判斷"
field-strategy: IGNORED
不推薦使用原因:作用范圍太廣,調(diào)用MyBatis-Plus封裝的update會不經(jīng)意將字段改為空
方案二:修改指定字段的更新策略(不推薦)
@TableField(strategy = FieldStrategy.IGNORED)
private String name;
不推薦使用原因:相對于方案一作用范圍相對較小,但調(diào)用MyBatis-Plus封裝的update也會不經(jīng)意將字段改為空文章來源:http://www.zghlxwxcb.cn/news/detail-567894.html
方案三:使用LambdaUpdateWrapper只在特定需求下做處理(推薦)
Order order = new Order();
order.setId(1);
order.setPrice(3.8)
order.setName(null)
LambdaUpdateWrapper<Order> lambdaUpdate = Wrappers.lambdaUpdate();
//構(gòu)建where條件根據(jù)id修改
lambdaUpdate.eq(Order::getId, order.getId());
//name屬性為空時(shí)可以修改字段為NULL
if (StringUtils.isEmpty(order.getName())) lambdaUpdate.set(Order::getName, null);
//此時(shí)生成的SQL語句為update order set price = 3.8, name = null where id = 1
super.update(order, lambdaUpdate);
推薦原因:不影響任何地方只在此處生效文章來源地址http://www.zghlxwxcb.cn/news/detail-567894.html
到了這里,關(guān)于MyBatis-Plus如何將字段修改為空值的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!