我有两个类,有两个单独的表,“员工”和“公司”。我想在Company类中保留一个员工列表。这很容易,但我不知道如何在数据库端表示此列表。
“公司”类别:
@Entity
@Table(name = "company")
public class Company {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Integer id;
@Column(name = "name")
private String name;
private List<Employee> employeeList;
}
类“员工”:
@Entity
@Table(name = "employee")
public class Employee {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Integer id;
@Column(name = "name")
private String name;
@Column(name = "age")
private Integer age;
如果没有hibernate,我会选择创建另一个包含两列“employeeId”和“companyId”的表的设计,并尝试让所有员工的“employeeId”与“companyId”匹配。我不知道是否有可能在冬眠时做同样的事情。如果是,怎么做?如果没有,您的解决方案是什么?
我认为你需要在公司和员工之间建立一对一的关系。Hibernate@OneToMany注释可用于相同的操作。
这是一个例子,展示了如何在Hibernate中做到这一点
简短的答案是,您可以将Hibernate配置为生成一个30表来存储您想要的关联。您可以使用@JoinTable注释来实现这一点。按照您的示例,它将如下所示:
@Entity
@Table(name = "company")
public class Company {
...
@OneToMany// or @ManyToMany
@JoinTable(name = "table_name",
joinColumns = @JoinColumn(name="employeeId", referencedColumnName="id"),
inverseJoinColumns = @JoinColumn(name="companyId", referencedColumnName="id"))
private List<Employee> employeeList;
现在Hibernate将创建一个名为table_name的表,其中包含您想要的两列以及对应于表员工和公司的外键约束。您也可以使用@ForeignKey注释指定自由键名称。
存储类用于定义容器集群中的不同存储类型。 存储类用于定义容器集群中的不同存储类型,目前仅支持本地存储和Ceph存储。容器集群默认提供本地存储的存储类。存储类用于配合持久卷(PV)动态的创建需要的存储资源。 存储类的详细介绍内容,请参考kubernets官方文档-存储类。 入口:在云管平台单击左上角导航菜单,在弹出的左侧菜单栏中单击 “容器/集群/存储类” 菜单项,进入存储类页面。 查看存储类 该功
主要内容:程序员的幽默计算机要处理的信息是多种多样的,如数字、文字、符号、图形、音频、视频等,这些信息在人们的眼里是不同的。但对于计算机来说,它们在内存中都是一样的,都是以二进制的形式来表示。 要想学习编程,就必须了解二进制,它是计算机处理数据的基础。 内存条是一个非常精密的部件,包含了上亿个电子元器件,它们很小,达到了纳米级别。这些元器件,实际上就是电路;电路的电压会变化,要么是 0V,要么是 5V,只有这两种电压。
64 位 After Effects 中的内存 (RAM) 使用 “内存和多重处理”首选项 设置内存和多重处理首选项,方法为选择“编辑”>“首选项”>“内存”(Windows) 或“After Effects”>“首选项”>“内存”(Mac OS)。 当您在“内存和多重处理”对话框中修改设置时,After Effects 将在对话框中动态更新帮助文本,报告它将如何分配和使用内存与 CPU。 无论是
问题内容: 读取/ proc / $ PID / maps时,将获得映射的内存区域。这是甩掉其中一个地区的方法吗? 谢谢 问题答案: 不!打电话与。然后打开,寻找区域偏移量,然后按照中给出的那样读取区域的长度。 这是我编写的在C语言中执行的程序。这是我编写的在Python(以及ptrace绑定)中执行的模块。最后,将程序的所有区域转储到files的程序。 请享用!
第1章到第3章用标识符作为变量名。变量属性包括名称、类型、长度和值。本章用标识符作为用户自定义的函数名。实际上,程序中的每个标识符还有其他属性,包括存锗类(storageclass)、作用域(scope)和连接(linkage)。 C++提供了4个存储类说明符(storage class specifier):auto、register、extern和static。标识符的存储类说明符可以确定其存
存储类定义 C++ 程序中变量/函数的范围(可见性)和生命周期。这些说明符放置在它们所修饰的类型之前。下面列出 C++ 程序中可用的存储类: auto register static extern mutable thread_local (C++11) 从 C++ 11 开始,auto 关键字不再是 C++ 存储类说明符,且 register 关键字被弃用。 auto 存储类 自 C++ 11