这个对象设置了ManyToMany关联,使用jpa save方法的时候,测试有下面的现象:
new 这个对象,设置ID主键,并设置需要更新字段的值,所以这个时候它是游离状态的。
调用spring data jpa的save 方法时,jpa会根据是否有ID字段去执行新建或者更新,这里为更新操作。这样发现执行更新的时候,会有多余的select语句查询关联对象。先通过jpa get这个对象,然后set需要更新的字段,这个对象就被jpa管理,这样执行save操作,就只有一条update语句。
那么问题来了,一般都是前端传递参数到后台,不会知道需要更新哪些字段,针对1的情况,怎么解决掉多余的查询语句?
我也遇到了。这个貌似没办法只能先查询再修改。