Spring-data-jpa 的@modifying注解】的更多相关文章

一.java对象与数据库字段转化 1.@Entity:标识实体类是JPA实体,告诉JPA在程序运行时生成实体类对应表 2.@Table:设置实体类在数据库所对应的表名 3.@Id:标识类里所在变量为主键 4.@GeneratedValue:设置主键生成策略,此方式依赖于具体的数据库 5.@Basic:表示简单属性到数据库表字段的映射(几乎不用) 6.@Column:表示属性所对应字段名进行个性化设置 7.@Transient:表示属性并非数据库表字段的映射,ORM框架将忽略该属性 8.@Temp…
如题,在数据库批量操作方法上使用@Transactional注解,其中一条数据抛出异常了,却死活不回滚. 批量操作方法是公有的,spring也是默认支持事务的,排除代码层面问题,那么就看看数据库是否支持事务吧: mysql> show engines; +--------------------+---------+----------------------------------------------------------------+--------------+------+----…
比如有个实体类对象,类名为Book,对应数据表的表名为book 1. 一个使用@Query注解的简单例子:占位符?1和?2 @Query(value = "select name,author,price from Book b where b.price>?1 and b.price<?2") List<Book> findByPriceRange(long price1, long price2); 2.  Like表达式:指定参数 :name,下面要用@P…
/** * * @param file_name 传入参数 * @return */ @Query(value = "select * from user where name LIKE CONCAT(:file_name,'%')", nativeQuery = true) List<User> findByFileName(@Param("file_name") String file_name); 注意:@Param注解是必须的,目的是为了绑定参数…
原始JDBC操作数据库 传统JDBC方式实现数据库操作 package com.imooc.util; import java.io.InputStream; import java.sql.*; import java.util.Properties; /** * JDBC工具类: * 1) 获取Connection * 2) 释放资源 */ public class JDBCUtil { /** * 获取Connection * @return 所获得到的JDBC的Connection */…
Spring Data JPA通过提供基于JPA的Repository极大地减少JPA作为数据访问方案的代码量. 1.定义数据访问层 使用Spring Data JPA建立数据访问层十分简单,只需定义一个继承JpaRepository的接口即可,接口如下: @RepositoryRestResource(path = "people") public interface PersonRepository extends JpaRepository<Person, Long>…
问题:SpringDataJPA怎么使用? 一.考察目标 主要考核SpringDataJPA的用法 二.题目分析 spring data jpa 的使用步骤(下面有具体实现细节) 1.创建maven工程并导入依赖 2.添加配置 3.实体类添加注解 4.编写dao接口 5.编写测试类 三.应用场景 spring data jpa 是针对jpa规范中具体实现的在封装,hibernate框架就是jpa规范的具体实现. 四.总结 主要考察的是: 1.spring data jpa 的环境搭建 2.spr…
1. Spring Boot常用配置项 基于Spring Boot 2.0.6.RELEASE 1.1 配置属性类 spring.jpa前缀的相关配置项定义在JpaProperties类中, 1.2 自动装配类 涉及到的自动配置类包括:JpaBaseConfiguration,HibernateJpaAutoConfiguration 1.3 常用配置项 # 是否开启JPA Repositories,缺省: true spring.data.jpa.repositories.enabled=tr…
现在Dao持久层的解决方案中,大部分是采用Spring Data JPA或MyBatis解决方案,并且传统企业多用前者,互联网企业多用后者. Spring Data JPA 是Spring Data 在JPA(Java持久层规范)和ORM(对象关系映射)框架之间抽象封装层,它不直接代替ORM框架,默认低层使用的ORM框架是Hibernate,但使用它可以灵活的在各种ORM框架之间切换,并且减少ORM框架接入部分重复代码,进而简化代码. MyBatis是一个持久层框架的,但它设计初衷与Hibern…
使用spring data jpa 的删除操作,需要加注解@Modifying     @Transactional 否则报错如下: No EntityManager with actual transaction available for current thread - cannot reliably process 'remove' call 场景如下: 在service中,先执行 delete 操作,再执行 save操作 报错如下: No EntityManager with actu…