首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

springboot整合H2(内置一个月对JPA的学习)

总的来说,JPA包括以下3方面的技术: ORM映射元数据 JPA支持XMLJDK5.0注解两种元数据的形式,元数据描述对象表之间的映射关系,框架据此将实体对象持久化到数据库表中; API 用来操作实体对象...当然你也可以进行如下的配置。 spring.h2.console.settings.web-allow-others=true,进行该配置后,h2 web consloe就可以在远程访问了。...spring.h2.console.enabled=true,进行该配置,程序开启时就会启动h2 web consloe。...表名_id 进行映射 如果手动指定字段,使用@JoinColumn指定字段 例如 @JoinColumn(name = "my_student_id",referencedColumnName =...DETACH 如果你要删除一个实体,但是它有无法删除,你就需要这个级联权限了。它会撤销所有相关的关联。

3.5K10

SpringBoot中@Transaction在不同MySQL引擎下的差异性

,发现有人提到说MySQL数据库的事务不生效,可能引擎类型有关系,因此下一步往这个方向排查一下。...修改JPA自动创建表时的引擎 测试工程中,使用的是JPA自动创建数据表的方式,默认情况下,创建出来数据表使用的是MyISAM引擎,因此如果需要使用事务,可以手动配置下,指定使用InnoDB引擎进行创建数据表...很显然,因为MyISAM引擎本身就是非事务安全的,它InnoDB的介绍概述如下: MyISAM:这个是默认类型,它是基于传统的ISAM类型,ISAM是Indexed Sequential Access...与其他存储引擎比较,MyISAM具有检查修复表格的大多数工具。MyISAM表格可以被压缩,而且它们支持全文搜索。它们不是事务安全的,而且也不支持。如果事物回滚将造成不完全回滚,不具有原子性。...InnoDB:这种类型是事务安全的。它与BDB类型具有相同的特性,它们还支持。InnoDB表格速度很快。具有比BDB还丰富的特性,因此如果需要一个事务安全的存储引擎,建议使用它。

99920

如何完美解决 `could not execute statement; SQL ; nested exception is org.hibernate.exception.SQLGramm

今天我们要聊一聊一个在 Hibernate JPA 中常见的错误:SQLGrammarException。...= null ) 2.2 数据库约束冲突 违反主键、唯一等约束可能导致无法插入或更新记录,进而产生 SQLGrammarException 异常。...解决方案: 确保数据库中的表具有正确的主键约束。 插入或更新数据时,确保满足表的约束条件。...A:可以在 application.properties 中添加以下配置来启用 SQL 日志: spring.jpa.show-sql=true spring.jpa.properties.hibernate.format_sql...参考资料 Spring Data JPA 官方文档 Hibernate 官方文档 Stack Overflow 相关问题解答 总结与未来展望 数据库交互总是有挑战的,尤其是当使用 ORM 框架时。

62610

漫谈模式之规格模式

示例二、JPA使用规格模式构建查询语句我们知道,Spring Data JPASpring框架(Spring Boot)中提供的非常有用的模块,可以以最小的工作量访问持久层并使用JPA减少大量样板代码...使用Spring Data JPA提供的Repository模式及其功能,通常会开始为应用程序业务逻辑所需的每个不同查询添加新的方法定义。...然而,从可读性可维护性的角度来看,这种情况,一个包含几十个方法甚至更多方法的类简直就是一场噩梦。由于Spring Data JPA的命名约定,我们可能会有一些难以理解的方法名。...在Spring Data JPA中使用规格模式Spring已经提供了Specification接口来实现它,并使不同的规格在我们的代码库中可重用。...规格模式可以使用的场景可以有:应用筛选/搜索条件时从代码中提取业务规则执行单元测试组件/特定对象的选择构建一些复杂的解析逻辑等等

2.4K60

SpringDataJPA笔记(1)-基础概念注解

所以JPA仅仅是一种规范,通过定义通用的接口屏蔽实现层的差异 spirng data jpaspring提供的一套简化JPA开发的框架,可以理解为 JPA 规范的再次封装抽象 二 Spring Data...one2one关系,关系维护端的主键作为键指向关系被维护端的主键,不再新建一个列 元数据属性说明: name:列名。...joinColumns:定义指向所有者主表的列,数据类型是JoinColumn数组。...inverseJoinColumns:定义指向非所有者主表的列,数据类型是JoinColumn数组 @JoinColumn 如果在entity class的field上定义了关系(one2one或one2many...referencedColumnName:该列指向列的列名(建表时该列作为列指向关系另一端的指定列) unique: 是否唯一 nullable: 是否允许为空 insertable:

3.9K20

Spring boot注解讲解

我们经常使用@ComponentScan注解搜索beans,并结合@Autowired注解导入。可以自动收集所有的Spring组件,包括@Configuration类。...@Configuration :等同于spring的XML配置文件;使用Java代码可以检查类型安全。 @EnableAutoConfiguration :自动配置。...@JsonBackReference:解决嵌套链问题。 @RepositoryRestResourcepublic:配合spring-boot-starter-data-rest使用。...一般用于jpa这两个注解一般一块使用,但是如果表名实体类名相同的话,@Table可以省略 @MappedSuperClass:用在确定是父类的entity上。父类的属性子类可以继承。...@JoinColumn(name=”loginId”):一对一本表中指向另一个表的。一对多:另一个表指向本表的

11710

Spring Boot 最最最常用的注解梳理

@Configuration 等同于spring的XML配置文件;使用Java代码可以检查类型安全。 @EnableAutoConfiguration 自动配置。...@JsonBackReference 解决嵌套链问题。 @RepositoryRestResourcepublic 配合spring-boot-starter-data-rest使用。...我们经常使用@ComponentScan注解搜索beans,并结合@Autowired注解导入。可以自动收集所有的Spring组件,包括@Configuration类。...一般用于jpa这两个注解一般一块使用,但是如果表名实体类名相同的话,@Table可以省略 @MappedSuperClass: 用在确定是父类的entity上。父类的属性子类可以继承。...@JoinColumn(name=”loginId”): 一对一:本表中指向另一个表的。一对多:另一个表指向本表的

84410

SpringData JPA就是这么简单

2.5 小总结 https://www.zhihu.com/question/53706909 引入知乎的一段回答: 基本的增删改查调用存储过程通过Spring Data JPA Repository...来解决 稍微复杂的查询或是批量操作使用QueryDSL或Spring Data Specification的API来解决 特别特别复杂的查询操作可以使用Spring Data JPA Repository...注释是保存表与表之间关系的字段 2,**如果不设置name,默认name = 关联表的名称+”-“+关联表主键的字段名,在上面实例3,中,默认为“address_id” ** 默认情况下,关联实体的主键一般是用来做的...,但如果此时不想用主键作为,则需要设置referencedColumnName属性,如: create table address ( id int(20) not null auto_increament...下面我会给出当时搜索到的资料遇到的问题以及解决方案 4.1遇到的问题以及解决资料 SpringData JPA遇到的问题有: 参考资料: https://www.cnblogs.com/sevenlin

1.6K80

Spring Data JPA 就是这么简单

下面结合实例进行展示说明,建议克隆远程的仓库的 https://github.com/kickcodeman/spring-data-jpa ,案例代码都在仓库中可见。...@ManyToOne 学生类 Student 中关键新增代码片段如下: @ManyToOne private ClassRoom classRoom; 一对多多对一的关系维护中,通常在多的一方进行的维护...在使用 spring data jpa 进行增删改查的时候一定要弄清彼此的级联关系,这很重要,很重要,很重要。。。 级联应该怎么使用呢?...级联保存级联更新的时候你需要知道在保存更新关联数据的时候是没有关联到外的,你需要借助关联类去维护,下面看代码展示: 教室类级联保存学生,教室类关键代码如下: @OneToMany(mappedBy...使用spring data jpa关键字进行增删改查 在使用 spring data jpa 进行数据库的增删改查的时候,基本上我们无需写 sql 语句的,但是我们必须要遵守它的规则,下面就来聊一聊:

6.8K50

Spring Data JPA: 分页排序实战继承PagingAndSortingRepository通过参数生成Pageable对象直接获取Pageable对象返回结果

实际上,Spring Data Jpa对于分页以及排序的查询也有着完美的支持,接下来,我们来学习如何通过Pageable来对数据库进行分页查询。...Pageable 是Spring Data库中定义的一个接口,该接口是所有分页相关信息的一个抽象,通过该接口,我们可以得到分页相关所有信息(例如pageNumber、pageSize等),这样,Jpa...Spring Data Jpa除了会通过命名规范帮助我们扩展Sql语句,还会帮助我们处理类型为Pageable的参数,将pageable参数转换成为sql'语句中的条件,同时,还会帮助我们处理类型为Page...的返回值,当发现返回值类型为Page,Spring Data Jpa将会把数据的整体信息、当前数据的信息,分页的信息都放入到返回值中。...Spring Data Jpa提供了PageRequest的具体实现,我们只提供分页以及排序信息即可: ? ?

2.8K31

SpringBoot 注解大全,收藏一波!!!

@Configuration 等同于spring的XML配置文件;使用Java代码可以检查类型安全。 @EnableAutoConfiguration 自动配置。...@JsonBackReference解决嵌套链问题。 @RepositoryRestResourcepublic配合spring-boot-starter-data-rest使用。...我们经常使用@ComponentScan注解搜索beans,并结合@Autowired注解导入。可以自动收集所有的Spring组件,包括@Configuration类。...一般用于jpa这两个注解一般一块使用,但是如果表名实体类名相同的话,@Table可以省略 @MappedSuperClass:用在确定是父类的entity上。父类的属性子类可以继承。...@JoinColumn(name=”loginId”):一对一:本表中指向另一个表的。一对多:另一个表指向本表的

60220

SpringBoot注解大全,收藏一波!!!

@Configuration 等同于spring的XML配置文件;使用Java代码可以检查类型安全。 @EnableAutoConfiguration 自动配置。...@JsonBackReference解决嵌套链问题。 @RepositoryRestResourcepublic配合spring-boot-starter-data-rest使用。...我们经常使用@ComponentScan注解搜索beans,并结合@Autowired注解导入。可以自动收集所有的Spring组件,包括@Configuration类。...一般用于jpa这两个注解一般一块使用,但是如果表名实体类名相同的话,@Table可以省略 @MappedSuperClass:用在确定是父类的entity上。父类的属性子类可以继承。...@JoinColumn(name=”loginId”):一对一:本表中指向另一个表的。一对多:另一个表指向本表的

47230

Spring Data JPA系列2:快速在SpringBoot项目中熟练使用JPA

大家好,又见面了~ 这是Spring Data JPA系列的第2篇,在上一篇《Spring Data JPA系列1——JDBC、ORM、JPASpring Data JPA,傻傻分不清楚?...SpringData JPA正是通过各种注解,来完成对各个字段的定义与行为约束,以及完成表间关联关系(比如)。 常见的一些注解以及含义功能说明,在本文的末尾表格里面进行了梳理,此处不赘述。...创建出来,并且相关约束条件(比如自增主键、关联之类的)也会一并创建并设置上去,如下示意,左侧的代码自动创建出右侧DB中的表结构: 补充说明: 虽然这个功能比较方便,但是强烈建议在生产环境上关闭此功能...在本系列的下一篇内容中,我会进一步对SpringData JPA中的一些核心类型与核心方法进行剖析,让你不仅仅停留在简单使用层面,更能对JPA有个深度的了解、达到精通级别。...本文档隶属于《Spring Data JPA用法与技能探究》系列的第二篇。本系列文档规划对Spring Data JPA进行全方位的使用介绍,一共分为5篇文档,如果感兴趣,欢迎关注交流。

1.3K40
领券