时间:2021-05-19
List映射表
List列表是一个java集合存储在序列中的元素,并允许重复的元素。此接口的用户可以精确地控制,其中列表中的每个元素插入。用户可以通过他们的整数索引访问元素,并搜索列表中的元素。更正式地说,列表通常允许对元素e1和e2,使得e1.equals(e2),它们通常允许多个null元素,如果他们允许的null元素。
List列表被映射在该映射表中的<list>元素,并将java.util.ArrayList中初始化。
定义RDBMS表:
考虑一个情况,需要员工记录存储在EMPLOYEE表,将有以下结构:
此外,假设每个员工都可以有一个或多个与他/她相关的证书。List集合映射需要在一个集合表的索引列。索引列定义集合中的元素的位置。因此,我们将存储证书的相关信息在一个单独的表,该表具有以下结构:
create table CERTIFICATE ( id INT NOT NULL auto_increment, certificate_name VARCHAR(30) default NULL, idx INT default NULL, employee_id INT default NULL, PRIMARY KEY (id));将有一个对多( one-to-many)的EMPLOYEE和证书对象之间的关系。
定义POJO类:
让我们实现一个POJO类员工将被用于保存与EMPLOYEE表中的对象和有证书的列表变量的集合。
我们需要相应的证书表定义另一个POJO类,这样的证书对象可以存储和检索到的证书表。
public class Certificate{ private int id; private String name; public Certificate() {} public Certificate(String name) { this.name = name; } public int getId() { return id; } public void setId( int id ) { this.id = id; } public String getName() { return name; } public void setName( String name ) { this.name = name; }}定义Hibernate映射文件:
让我们开发指定Hibernate如何定义的类映射到数据库表的映射文件。<list>元素将被用来定义使用List集合的规则。表的索引是整数类型总是和使用<list-index>元素定义映射。
编译和执行:
会在屏幕上获得以下结果,并同时记录会在员工和证书表被创建。可以看到证书已排序顺序相反。可以通过改变映射文件试试,只需设置sort="natural"和执行程序,并比较结果。
$java ManageEmployee.......VARIOUS LOG MESSAGES WILL DISPLAY HERE........First Name: Manoj Last Name: Kumar Salary: 4000Certificate: MCACertificate: MBACertificate: PMPFirst Name: Dilip Last Name: Kumar Salary: 3000Certificate: BCACertificate: BAFirst Name: Manoj Last Name: Kumar Salary: 5000Certificate: MCACertificate: MBACertificate: PMP如果检查员工和证书表,就应该记录下了:
mysql> select * from EMPLOYEE;+----+------------+-----------+--------+| id | first_name | last_name | salary |+----+------------+-----------+--------+| 53 | Manoj | Kumar | 5000 |+----+------------+-----------+--------+1 row in set (0.00 sec)mysql> select * from CERTIFICATE;+----+------------------+-------------+| id | certificate_name | employee_id |+----+------------------+-------------+| 11 | MCA | 53 || 12 | MBA | 53 || 13 | PMP | 53 |+----+------------------+-------------+3 rows in set (0.00 sec)声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Hibernate框架。Hibernate是一个对象关系映射框架,通过xml的hibernate配置文件,可将每一个实体类映射到数据库中的对应表,但要求实体类中
Hibernate使用中防止SQL注入的几种方案Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员
java中MyBatis注解映射的实例详解1.普通映射@Select("select*frommybatis_Studentwhereid=#{id}")pub
持久化类Hibernate的整个概念是采取从Java类属性的值,并将持久到数据库表。一个映射文件Hibernate的帮助确定如何从拉动类的值,并将它们映射与表和
本文来和大家一起来探讨路由器设置中的arp映射表是干什么用的?通过ARP映射表来观察网络中计算机的MAC地址和IP地址的映射关系,并可选定欲控制的计算机条目进行