Springdata_Jpa注解开发
来源:互联网 发布:淘宝状态码-2 编辑:程序博客网 时间:2024/06/06 18:02
在项目的进行中需要通过 @Modifying 注解完成修改和删除操作,但是不支持查询和新增操作
那么接下来就说下@modifying注解开发的使用
@Modifying @Query("update Person set email = :email where lastName =:lastName")
voidupdatePersonEmailByLastName(@Param("lastName")String lastName,@Param("email")String email);
执行报错,异常如下,
关键看这行 Caused by: javax.persistence.TransactionRequiredException: Executing an update/delete query
,说明我们缺少事务配置。
可以在service实现类上面添加事物注解,也可以在方法上面添加事物注解,或者在xml 文件中添加service事物控制器的管理
@Service
@Transactional
<context:component-scan base-package="com.itcast.springdata.service"></context:component-scan>
总结modifying注解开发的使用
(1)可以通过自定义的 JPQL 完成 UPDATE 和 DELETE 操作。 注意: JPQL 不支持使用 INSERT;
(2)在 @Query 注解中编写 JPQL 语句, 但必须使用 @Modifying 进行修饰. 以通知 SpringData, 这是一个 UPDATE 或 DELETE 操作
(3)UPDATE 或 DELETE 操作需要使用事务,此时需要定义 Service 层,在 Service 层的方法上添加事务操作;
(4)默认情况下, SpringData 的每个方法上有事务, 但都是一个只读事务。 他们不能完成修改操作。
- Springdata_Jpa注解开发
- 注解开发
- hibernate注解开发,注解详解
- Sring注解开发详解
- spring MVC 注解开发
- Hibernate的注解开发
- Hibernate3注解开发(ManyToMany)
- Spring bean注解开发
- Struts2注解开发
- SSH 注解开发
- butterKnife注解开发框架
- springmvc注解开发
- Struts2注解开发
- java注解开发
- Struts2注解开发问题
- springmvc注解开发
- 注解开发--基础
- 注解开发--高级
- Mysql分组以及聚合函数
- c++继承里面的构造函数和析构函数
- Race to 1 Again LightOJ
- CentOS 7下安装Python3.5
- idea14使用maven创建web工程
- Springdata_Jpa注解开发
- Java后台开发必备技能JDBC+Servlet+JSP
- 一次性口令机制java实现(信息安全)
- 全选 删除
- The Necklace UVA10054
- codevs 2611 观光旅游
- 最大子段和(SDIBTOJ 2002)
- 细说10月24号为什么是程序员的节日?
- Eclipse中关联Maven