首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

文旦 介绍 什么是h2 H2是Thomas Mueller提供一个开源、纯java实现关系数据库。它可以被嵌入Java应用程序中使用,或者作为一个单独数据库服务器运行。...什么是JPA JPA是Java Persistence API简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系映射关系,并将运行期实体对象持久化到数据库。...总的来说,JPA包括以下3方面的技术: ORM映射元数据 JPA支持XMLJDK5.0注解两种元数据形式,元数据描述对象表之间映射关系,框架据此将实体对象持久化到数据库表; API 用来操作实体对象...查询语言 这是持久化操作很重要一个方面,通过面向对象而非面向数据库查询语言查询数据,避免程序SQL语句紧密耦合 使用H2工程 因为我们使用JPAH2,所以我们需要同时添加这两个依赖,同时为了偷懒...=classpath:data.sql # 如果不指定会在内存 关闭就没了 #指定数据库种类,这里 file意思是文件型数据库 spring.datasource.url=jdbc:h2:file

3.4K10

Spring Boot with Mysql

1.建立数据库连接(database connection) 在上篇文章我们新建了一个Spring Boot应用程序,添加了jdbcdata-jpa等starters,以及一个h2数据库依赖,这里我们将配置一个...对于H2、HSQL或者Derby这类嵌入型数据库,只要在pom文件添加对应依赖就可以,不需要额外配置。...我们通过CrudRespository接口子接口数据库交互,同时由Spring建立对象数据库表、数据库表数据之间映射关系。...@ManyToOne, @ManyToMany表明具体数据存放在其他表,在这个例子里,书作者是多对一关系,书出版社是多对一关系,因此book表authorpublisher相当于数据表外键...;并且在Publisher通过@OneToMany(mapped = "publisher")定义一个反向关联(1——>n),表明book类publisher属性这里books形成对应关系

3.6K20
您找到你想要的搜索结果了吗?
是的
没有找到

如何在 Spring Boot 读写数据

它为开发人员提供了一种对象/关联映射工具,实现管理应用关系数据,从而简化Java对象持久化工作。很多ORM框架都是实现了JPA规范,比如:Hibernate、EclipseLink 等。...另一种是以 Java 实体类为核心,建立实体类和数据库表之间映射关系,也就是ORM框架,比如:Hibernate、Spring Data JPA。 ?...如何在 Spring Boot 读写数据 1.2 JPA 规范 ORM映射元数据:JPA支持XML注解两种元数据形式。...元数据用于描述对象表之间映射关系,框架会据此将实体对象持久化到数据库表JPA API:用来操作实体对象,执行CRUD操作。对于简单 CRUD 操作,开发人员可以不用写代码。...2.3 实体关系注解 Spring Data JPA 有四种关系注解,它们分别是 @OneToOne、@OneToMany、@ManyToOne @ManyToMany。

15.8K10

springData Jpa 快速入门前言:一、简介:二、JPA核心概念:三、springboot集成jpa案例:总结:

jpa,全称为Java persistence api,是用来管理java ee 或Java se环境持久化、以及对象关系映射api,hibernate就是它一个实现。...二、JPA核心概念: 1、实体实体表示关系数据库表,每个实体实例对应该表一条记录,实体类应该有标识其为实体注解,还应该有唯一对象标识符,简单主键或复合主键。...2、关系关系无外乎一下几种: 一对一: @OneToOne 一对多: @OneToMany 多对一: @ManyToOne 多对多: @ManyToMany 3、EntityManager...,比如name属性对应数据库表字段也是name,如果要自定义,可以用在属性上用@Column()注解; 表名默认实体类名一致,可以在类上加@Table()注解来自定义。...image.png 点击用户名字还可以进行删除修改操作,这里不再截图。接下来说说H2数据库。 9、H2数据库: H2数据库是一个内存数据库,数据保存在内存,项目一重启数据就没了。

70320

Spring·JPA

JPA JPA 即 Java 持久化 API(Java Persistence API),是一个用于映射 Java 对象关系型数据库表规范。...对象-关系型元数据(Object-relational metadata):开发者需要设定 Java 类和它们属性数据库映射关系。...(extends)外,不同实体间也存在各种模型关系JPA 为建模涉及到实体/表提供了多种关系: OneToOne:在这种关系每个实体只含有一个明确对其它实体引用;反之亦然。...OneToMany/ManyToOne:在这种关系,一个实体可以有多个子实体,每个子实体只属于一个父实体。 ManyToMany:在这种关系,一种类型多个实体,可以含有其它类型实体多个引用。...Embedded:在这种关系,其它实体其父实体存储在同一个表(即,每一个表都有两个实体)。

3.3K30

JPA实体注解

@Entity   标注于实体类上,通常@Table是结合使用,代表是该类是实体类 @Table   标注于实体类上,表示该类映射到数据库表,没有指定名称的话就表示数据库中表名为该类简单类名表名相对应...  是否把数据装载到内存延迟初始化,第一次访问时候在加载数据,一般用在大数据存放 @Embeddable指定联合组键 @EmbeddedId结合使用 ======================...@Id @Id设置对象表示符,标识实体属性映射对应表主键 @GeneratedValue 设置标识符生成策略,常@Id一起使用  参数:strategy指定具体生成策略  方式一:@...fetch:表示抓取策略,默认为FetchType.LAZY,因为关联多个对象通常不必从数据库预先读取到内存  可选  cascade:表示级联操作策略,对于OneToMany类型关联非常重要,通常该实体更新或删除时...,其关联实体也应当被更新或删除  例如:实体UserOrder是OneToMany关系,则实体User被删除时,其关联实体Order也应该被全部删除 @ManyToMany 描述一个多对多关联

3.8K70

JPA关联映射 - 一对一、一对多用法

引言 JPA(Java Persistence API)是Java平台上用于对象关系映射(ORM)标准。在数据库设计,表表之间关联关系是常见,而JPA提供了一种方便方式来映射这些关联关系。...本文将深入介绍JPA一对一一对多关联映射,结合实际项目中应用场景进行说明。 JPA关联映射概述 一对一关联 一对一关联是指一个实体类关联另一个实体一个实例。...我们在addAuthorWithBooks方法创建了一个作者两本图书,并通过关联映射建立了一对多一对一关系。...总结 本文深入介绍了JPA一对一一对多关联映射用法,结合实际项目中应用场景进行了说明。JPA关联映射能够有效地处理实体类之间关系,提供了一种便捷方式来管理复杂数据关系。...希望通过本文介绍,读者能够更好地理解JPA中一对一一对多关联映射原理用法,并能够在自己项目中应用关联映射来优化数据存储查询。谢谢阅 读!

22610

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

SpringDataJPA基础概念注解 一 JPA介绍 JPA是Java Persistence API简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系映射关系...如声明一个实体类 Customer,它将映射到数据库 customer 表上 @Table 当实体类与其映射数据库表名不同名时需要使用 @Table 标注说明,该标注 @Entity 标注并列使用...里@Column设置都将不起作用 JPA规范对@Lob注解并没有说明不能同时标注@Column注解,但是在实际使用Hibernate JPA不支持这中标注方式 @Id @Id 标注用于声明一个实体属性映射为数据库主键列...optional:表示该属性是否允许为null, 默认为true @Column 当实体属性与其映射数据库表列不同名时需要使用@Column 标注说明,该属性通常置于实体属性声明语句之前,还可...@MapKey 在一对多,多对多关系,我们可以用Map来保存集合对象。

3.9K20

JAVA 拾遗--JPA 二三事

补充说明:JPA 是一个规范,本文所提到 JPA,特指 spring-data-jpa。 tips:阅读本文之前,建议了解值对象实体这两个概念区别领域驱动设计基本概念。...使用 @Embedded 关联一对一值对象 现实世界有很多一对一关联关系,如人和身份证,订单购买者...而在 JPA 中表达一对一关联,通常有三种方式。...关于这一点芋艿,曹大师都进行过讨论,并达成了一致结论:数据库可以保存 JSON,使用时在应用层进行转换。... OneToMany 对比,这样虽然使得维护变得灵活,但也丧失了查找功能,我们将之保存成了 JSON 形式,导致其不能作为查询条件被检索。...第二点就有意思了,delete 不就可以直接删除对象,为什么需要介绍 orphanRemoval 呢? 以活动礼包这个一对多关系来举例。

1.9K100

JPA系列之对象持久化API JPA简介

支持面向对象高级特性: JPA 能够支持面向对象高级特性,如类之间继承、多态类之间复杂关系,最大限度使用面向对象模型 ##JPA主要包括这三方面的技术:## ORM 映射元数据:JPA...支持 XML JDK 5.0 注解两种元数据形式,元数据描述对象表之间映射关系,框架据此将实体对象持久化到数据库表。...JPA API:用来操作实体对象,执行CRUD操作,框架在后台完成所有的事情,开发者从繁琐 JDBC SQL代码解脱出来。...(2)创建实体类, 使用 annotation 来描述实体类跟数据库表之间映射关系...1-n 关联关系 //使用 @OneToMany映射 1-n 关联关系 //使用 @JoinColumn 来映射外键列名称 //可以使用 @OneToMany fetch 属性来修改默认加载策略

80330

对象持久化API之JPA入门教程

支持面向对象高级特性: JPA 能够支持面向对象高级特性,如类之间继承、多态类之间复杂关系,最大限度使用面向对象模型 JPA主要包括这三方面的技术: ORM 映射元数据:JPA 支持...XML JDK 5.0 注解两种元数据形式,元数据描述对象表之间映射关系,框架据此将实体对象持久化到数据库表。...JPA API:用来操作实体对象,执行CRUD操作,框架在后台完成所有的事情,开发者从繁琐 JDBC SQL代码解脱出来。...(2)创建实体类, 使用 annotation 来描述实体类跟数据库表之间映射关系...1-n 关联关系 //使用 @OneToMany映射 1-n 关联关系 //使用 @JoinColumn 来映射外键列名称 //可以使用 @OneToMany fetch

1.1K20

JPA关联关系表中加其他字段

前言 JPA是Java Persistence API简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系映射关系,并将运行期实体[对象持久化]到数据库。...Sun引入新JPA ORM规范出于两个原因:其一,简化现有Java EEJava SE应用开发工作;其二,Sun希望整合ORM技术,实现天下归一。...(出自百度百科) JPA优点:上手快,使用简单。 JPA缺点:不适合关联关系复杂项目。...正题 正常情况下使用@ManyToMany注解描述多对多关系时,JPA自动生成是只包括两个对应实体主键信息。有些时候呢,就会遇到需要在关联表中加入想要其他字段来辅助完成需求。...比如部门部门人之间关系。一个部门有多个人,一个又可以属于多个部门,一个人在不同部门之间有不同身份,在做展示时候就涉及排序问题,一个人在不同部门拥有不一样排序。

4.4K30

高级框架-springDate-JPA 第二天【悟空教程】

JPA 第二天 第1章 JPA 主键生成策略 通过annotation(注解)来映射实体类和数据库表对应关系,基于annotation主键标识为@Id注解, 其生成规则由@GeneratedValue...第二步:在数据库实现两张表关系 第三步:在实体描述出两个实体关系 第四步:配置出实体类和数据库表关系映射(重点) 第4章 JPA 一对多 4.1 示例分析 我们采用示例为客户联系人...4.3 实体关系建立以及映射配置 在实体,由于客户是少一方,它应该包含多个联系人,所以实体类要体现出客户中有多个联系人信息,代码如下: /** * 客户实体类 * 明确使用注解都是...4.4.1 @OneToMany: 作用: 建立一对多关系映射 属性: targetEntityClass:指定多多方字节码 mappedBy:指定从表实体引用主表对象名称...JPQL 语句是 JPA 定义一种查询语言。此种语言用意是让开发者忽略数据库表字段,而关注实体类及实体属性。更加契合操作实体类就相当于操作数据库表 ORM 思想。

2.5K10

Spring Data JPA 就是这么简单

java 操作实体时候能达到操作数据库中表效果(不用写sql ,就可以达到效果),jpa 实现思想即是 ORM (Object Relation Mapping),对象关系映射,用于在关系型数据库业务实体对象之间作一个映射...类映射到数据库表常用注解分析 spring data jpa 提供了很多注解,下面我们把日常常用注解总结如下: @Entity 是一个类注解,用来注解该类是一个实体类用来进行和数据库表建立关联关系...以上使用注解是定义一个实体常用注解,通过上述注解我们就可以通过实体类生成数据库表,实体表建立一个对应关系,下面贴出一个实体定义 demo : package com.zempty.springbootjpa.entity...类之间关系分析 在数据库当中表表之间都是有一定关联关系jpa 是如何在实体类之间建立和数据库表类似的关联关系呢?...orphanRemoval 使用细则 orphanRemoval 这个属性只存在两类关系注解 @OneToOne @OneToMany jpa 为什么把这个注解仅仅只放在这两个关系类注解呢?

6.8K50

「拥抱开源」从表设计到 JPA 实现

B 每个实体至多与 A 一个实体关系。 满足以上两点,即 A B 关系是一对一。 一对多 1:N A 每个实体至少 B N(N>0)个实体关系。...B 每个实体至多与 A 一个实体关系。 满足以上两点,即 A B 关系是一对多,B A 关系是多对一。 多对多 M:N A 每个实体至少 B M(M>0)个实体关系。...B 每个实体至少 A N(N>0)个实体关系。 满足以上两点,即 A B 关系是多对多。...mappedBy,拥有关系字段。仅在关联反侧(非所有权)指定此元素。 orphanRemoval,是否将删除操作应用于已从关系删除实体,以及是否将删除操作级联到那些实体。...订单明细数据关系是一对多。即@OneToMany,注意这里需要级联保存、修改、删除、刷新所有的操作。 商品明细数据,也包含两种关联关系商品数据之间关系是多对一。

1.6K20

Hibernate框架学习之四(JPA操作)

一、JPA概述以及它Hibernate之间关系 1.1.Hibernate 概述   JPA Java Persistence API,是EJB3规范负责对象持久化应用程序编程接口(ORM接口)...目前有两种注释方案可以确定对象表格之间对应关系:一种是注释实体属性字段(字段级别注释),成为字段访问方式(field access mode);另一种是注释实体属性访问方法(方法级别注释),...1.2 JPAHibernate 区别   JPAHibernate之间关系,可以简单理解为JPA是标准接口,Hibernate是实现。   ...那么Hibernate是如何实现JPA这种关系呢。...cascade: 表示级联操作策略 , 对于 OneToMany 类型关联非常重要 , 通常该实体更新或删除时 , 其关联实体也应当被更新或删除 例如 : 实体 User Order 是 OneToMany

6.6K70

快速学习-JPA一对多

第3章 JPA一对多 3.1 示例分析 我们采用示例为客户联系人。 客户:指的是一家公司,我们记为A。 联系人:指的是A公司员工。 在不考虑兼职情况下,公司员工关系即为一对多。...3.3 实体关系建立以及映射配置 在实体,由于客户是少一方,它应该包含多个联系人,所以实体类要体现出客户中有多个联系人信息,代码如下: /** * 客户实体类 * 明确使用注解都是JPA...规范 * 所以导包都要导入javax.persistence包下 */ @Entity//表示当前类是一个实体类 @Table(name="cst_customer")//建立当前实体表之间对应关系...@OneToMany: 作用:建立一对多关系映射 属性: targetEntityClass:指定多多方字节码 mappedBy:指定从表实体引用主表对象名称...2、如果配置了放弃维护关联关系权利,则不能删除(外键字段是否允许为null, 没有关系)因为在删除时,它根本不会去更新从表外键字段了。

1.9K20
领券