我有一个基本的SpringBoot 2.1.1.RELEASE应用程序。使用Spring Initializer,JPA,嵌入式Tomcat并将其作为具有宁静架构的可执行JAR打包,我有了这个存储库:
@Repository
public interface MenuPriceAlertNotificationRepository
extends CrudRepository<MenuPriceAlertNotification, Long> {
@Transactional
@Modifying
@Query("update MenuPriceAlertNotification n set n.read = :status where n.id in :notificationIdList and n.user.id = :userId")
void changeNotificationListReadStatus( @Param("notificationIdList") List<Long> notificationIdList,
@Param("userId") long userId,
@Param("status") boolean status);
}
但不更新数据库中的行
答案 0 :(得分:1)
尝试此代码,
@Transactional(propagation =Propagation.REQUIRED,isolation=Isolation.SERIALIZABLE,readOnly=false,transactionManager="transactionManager")
@Query("update MenuPriceAlertNotification n set n.read = :status where n.id in :notificationIdList and n.user.id = :userId")
void changeNotificationListReadStatus( @Param("notificationIdList") List<Long> notificationIdList,
@Param("userId") long userId,
@Param("status") boolean status);
如有任何问题,请告知。
答案 1 :(得分:0)
我不确定您要做什么,但是作为更新查询,您还可以通过选择{raw1}的id主键来使用ggplot(df, aes(x, colour = g)) + stat_ecdf() +
scale_x_log10(breaks=breaks, limits=c(0.001, 1000)) +
theme(axis.text.x = element_text(size=8, angle=45)) +
labs(title="", y ="", x="PR") +
theme_classic()
中的save()
函数在您的表格中更新。
另一点是您要考虑的CrudRepository
参数,您确定可以为List<Long> notificationIdList
提供一个列表吗?如果没有,则可以在列表的元素上使用for循环,并在每次迭代时调用查询函数@Param
。