jpa多表联查动态_jpa联表查询一对多
数据库
表company
id, name
表employee
employee_id,employee_name,company_id,price,monthtime,amount
实体类
Company
import lombok.Data;
import javax.persistence.*;
import java.util.ArrayList;
import java.util.List;
/**
* 测试一对多的查询 跟数据拼装差不多
*/
@Entity
@Table(name = "company")
@Data
public class Company {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
private String name;
//最重要的地方 1
@OneToMany(cascade = CascadeType.ALL,fetch = FetchType.EAGER)
@JoinColumn(name = "companyId")//指2表连接的关键字
//or 2
@oneToMany(mappedBy="companyId",cascade=CascadeType.All,fetch=FetchType.EAGER)
private List employees=new ArrayList<>();
}
注解属性 mappedBy,是指关联关系可以从company类中的employees属性上获取;cascade属性设置成CascadeType.ALL,是说主从表全面建立级联关系;fetch属性设置成FetchType.EAGER,是指加载规则是即时加载。查看源码会发现默认情况下,OneToMany注解的fetch属性设置的是FetchType.LAZY。
Employee
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import javax.persistence.*;
import java.math.BigDecimal;
@Entity
@Table(name = "employee")
@Data
public class Employee {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int employeeId;
private String employeeName;
private int companyId;
private BigDecimal price;
private int monthtime;
private BigDecimal amount;
}
Repository类
import com.xb.selltest.model.Company;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
import javax.swing.text.html.Option;
import java.util.List;
import java.util.Optional;
public interface CompanyRepository extends JpaRepository {
List findById(int id);
}
后面的方法大家都该知道,写service,impl,controller.或者直接去test也行
jpa多表联查动态_jpa联表查询一对多相关推荐
- jpa多表联查动态_jpa多表关联动态查询(自定义sql语句)
项目中,jpa对于简单的数据库操作很方便,但如果多表关联动态查询时,需要自己去写SQL语句拼接查询条件,以下为本人学习的例子. 类似于这种多条件动态查询: 项目用的是springboot 2.1.0. ...
- jpa多表联查动态_jpa动态查询与多表联合查询
jpa操作单表时简单明了,省去了sql的拼写,但如果需要多表联查的时候就不行了. 1.当jpa需要联表查询的时候 用到@Query注解,自定义sql 其中nativeQuery=true,指定使用原生 ...
- jpa多表联查动态_Spring Data JPA实现动态多表关联查询
在面向关系型数据库(例如:MySQL)的查询中,动态的.多表关联的查询属于比较复杂的情况.所以,我们只要掌握了这种复杂的查询,当面对其他查询情况时,就能做到胸有成竹. 在java工程中,目前我所了解到 ...
- mysql 多表联查_MySQL的多表联查
今天是周二,我们一起来研究下MySQL的多表联查啊.或许你也知道,表之间的关系有:1对1.1对多.多对多.然后...... 1. 嵌套查询:一个查询的结果是另外sql查询的条件 如:查询stu表中年龄 ...
- mysql多表联查分页_sqlserver多表联合查询和多表分页查询的代码讲解
sqlserver多表联合查询和多表分页查询的代码讲解 发布时间:2020-05-14 14:42:07 来源:亿速云 阅读:700 作者:Leah 这篇文章主要为大家详细介绍了sqlserver多表 ...
- mycat的主从关系 垂直分库 水平分表 以及mycat分片联表查询的配置详解(mysql5.7系列)
主从关系 准备三台不同ip的虚拟机 (第一批)主从关系的配置 主192.168.47.131 配置/etc/my.cnf,在[mysqld]下配置 log-error=/var/log/mysqld. ...
- sequelize如何建立关联关系表模型来实现联表查询?【多对多篇】
如何用sequelize提供的方法,实现多对多联表查询? 我们以 RBAC(Role-Based Access Control,基于角色的访问控制)来举例说明. 简单地说,一个用户拥有若干角色,每一个 ...
- jpi多表联查_数据库两表联查、多表联查,多重联查
表连接查询 [小编用的是Oracle数据库,Oracle数据库区分表名与字段名的大小写,所以大家进行查询的时候记得注意双引号哟~] 有表 表名:AAA 字段: id name tag 表名:BBB 字 ...
- mysql 联表比对,MySQL联表查询详解/超详细mysql left join,right join,inner join用法分析比较...
超详细mysql left join,right join,inner join用法分析 下面是例子分析 表A记录如下: aID aNum 1 a20050111 2 a20050112 3 a200 ...
最新文章
- TensorFlow实现一元线性模型
- char[1] or char*
- 利用反射搭建orm框架
- vbox下安装arch
- 开放防火墙的端口号mysql_linux下mysql开启远程访问权限及防火墙开放3306端口
- Yii --Command 任务处理
- python学习笔记之其它
- 《信号与系统》解读 第1章 信号与系统概述-6:系统对时域信号的基本运算与基本变换---幅度、加法、乘法、积分、微分、时延、反转、混合
- windows必备的驱动软件推荐
- epsonl360打印机连接电脑_爱普生l360驱动下载
- 2022年西式面点师(初级)考试题库及模拟考试
- 【我的世界】自定义局域网服务器-LanServerPropertie-1.17.x-自定义端口+关正版验证
- 比Office365、WPS更好用的最新版OpenOffice
- OpenPose环境搭建的经历
- Vue http request 请求拦截器
- oracle 大表删除数据后,回收空间的问题。
- 〖Python语法进阶篇⑱〗- 综合实战 - 抽奖系统之admin模块 - 抽奖系统之admin模块 - 实现对奖品的增删改操作
- zabbix微信告警(虚拟机脚本测试成功,zabbix上收不到信息)
- 用python依赖地图公司的API接口和SDK实现道路数据可视化分析
- JavaWeb|浅谈Cookie
热门文章
- html 获取页面元素高度,浅谈JavaScript获取元素的大小(高度和宽度)的方法
- python中deepcopy函数_python中copy()和deepcopy()详解
- Day05 JavaScript基础
- C/C++注册表【3】子键枚举,备份,恢复
- Windows:Arm,我们不合适
- 如何添加npc以及相应的脚本
- html表格框怎么变消失了,html表格边框问题
- MorphVOX Pro v4.3.21 语音聊天变化你声音
- 安卓动态调试七种武器之孔雀翎 – Ida Pro
- 35dir无法获取网站缩略图解决办法