hibernate关于一对一用法
首先来说一下数据库的表结构吧。主要涉及到两张表。一张是订单表sub_table 一张是商品表。


public class SubTable {
private Integer subId;//自动编号
private String subCode;//订单编号
private Integer pay;//付款金额
private UserTable userId;//用户号
private Date subDate ;//订单日期
private Product productIds;//商品
private String address;//收货地址
private String phone;//收件人联系电话
。。。。。
之后在说对应的hbm文件吧。只要的重点就在这里了。
<hibernate-mapping>
<class name="cn.sprhib.model.entity.SubTable" table="sub_table" catalog="spring">
<id name="subId" type="java.lang.Integer" column="sub_id">
<generator class="identity"/>
</id>
<property name="subCode" type="java.lang.String" column="sub_code"></property>
<property name="pay" type="java.lang.Integer" column="pay"/>
<many-to-one name="userId" class="cn.sprhib.model.entity.UserTable" column="user_id" cascade="all" lazy="false"></many-to-one>
<property name="subDate" type="timestamp" column="sub_date"/>
<many-to-one name="productIds" class="cn.sprhib.model.entity.Product" column="product_id" cascade="all" lazy="false"></many-to-one>
<property name="address" type="java.lang.String" column="address"/>
<property name="phone" type="java.lang.String" column="phone"></property>
</class>
</hibernate-mapping>
我遇到的问题主要是在这里遇到的。首先,订单和商品是一对一的关系,我在库中使用了外键。查询了网上的资料,才知道一对一也是可以用many-to-one的。之后果不其然出来了。
但是问题又来了,我能查出SubTable中的所有信息,但是关联的User和商品信息却没有。后来才知道这是lazy惹得祸。之后加上lazy="false"就出来了。在这里给自己记录一下吧。
hibernate关于一对一用法的更多相关文章
- Hibernate中一对一关联映射/组件映射
Hibernate映射:一对一关联 1.按照外键映射 2.按照主键映射 组件映射 下面以员工账号表和员工档案表(员工账号和档案表之间是一对一的关系)为例,介绍这两种映射关系,并使用这两种 映射方式分别 ...
- 9.hibernate的一对一映射
一.hibernate的一对一按照外键映射 1.创建如下sql脚本: --员工账号表 create table USERS1 ( USERID ) not null, USERNAME ), USER ...
- 【SSH系列】hibernate映射 -- 一对一双向关联映射
开篇前言 上篇博文[SSH进阶之路]hibernate映射--一对一单向关联映射,小编介绍了一对一的单向关联映射,单向是指只能从人(Person)这端加载身份证端(IdCard),但是反过来,不能从身 ...
- 5 -- Hibernate的基本用法 -- 要点
Hibernate的基本用法 ⊙ ORM的基本知识 ⊙ ORM和Hibernate的关系 ⊙ Hibernate的基本映射思想 ⊙ Hibernate入门知识 ⊙ 使用Eclipse开发Hiberna ...
- 【SSH进阶之路】Hibernate映射——一对一双向关联映射(六)
上篇博文[SSH进阶之路]Hibernate映射--一对一单向关联映射(五),我们介绍了一对一的单向关联映射,单向是指仅仅能从人(Person)这端载入身份证端(IdCard),可是反过来.不能从身份 ...
- Hibernate之一对一关联映射
Hibernate中一对一关联映射共分为两种,一种是一对一主键关联映射,另一种是一对一唯一外键关联映射.下面简单介绍一下这两种关联映射. 一对一主键关联映射 一对一主键关联映射的两个实体有相同的ID. ...
- hibernate中一对一映射
一.hibernate中一对一映射有两种 1 主键方式,一张表的主键是通过另一张表的主键生成的 2 外键方式,一张表添加外键引用另一张表的主键,并添加唯一unique约束 二.下面进行简单例子,用户和 ...
- Hibernate 注解的用法以及说明(二)
注解映射必须满足两大条件:Hibernate3.2以上版本和JSEE 5. @Entity 类注释,所有要持久化的类都要有@Entity public class Org implements ...
- Hibernate映射一对一关联关系
映射一对一关联 Hibernate提供了两种映射一对一关联关系的方式,分别是按照外键映射和按照主键映射. 下面是员工表和档案信息表(员工和档案表之间的关系是一对一的关系) 档案表(dept) pub ...
随机推荐
- windows下统计代码量
windows 工具 1.exe程序 http://blog.csdn.net/hui1502/article/details/51191678 https://sourceforge.net/pro ...
- PHYLIP linux安装
PHYLIP的安装: http://download.chinaunix.net/download.php?id=29483&ResourceID=8135下载 gunzip phylip-3 ...
- dlopen、dlsym和dlclose的使用
在dlopen()函数以指定模式打开指定的动态链接库文件,并返回一个句柄给dlsym()的调用进程.使用dlclose()来卸载打开的库. dlopen: dlopen() The function ...
- !! 浅谈Java学习方法和后期面试技巧
浅谈Java学习方法和后期面试技巧 昨天查看3303回复33 部落用户大酋长 下面简单列举一下大家学习java的一个系统知识点的一些介绍 一.java基础部分:java基础的时候,有些知识点是非常重要 ...
- 转:Jmeter之Bean shell使用(一)
一.什么是Bean Shell BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanS ...
- Linux 系统结构
Linux的系统结构一般由四部分组成 内核 1)内核 操作系统的核心,具有最基本的功能:内存管理.进程管理.设备驱动管理.文件系统管理,网络管理 内核版本(kernel)查看的三种方法 cat /pr ...
- C++之路进阶——bzoj2199(奶牛议会)
F.A.Qs Home Discuss ProblemSet Status Ranklist Contest ModifyUser gryz2016 Logout 捐赠本站 Notice:由于本OJ ...
- 构造方法特点,void
构造方法特点: 1.和类有相同的名字 2.无返回值 3.被默认强制void void作用:====>>说明声明的方法没有返回值 构造方法作用: -->初始化实例属性 -->用于 ...
- JSon_零基础_002_将List类型数组转换为JSon格式的对象字符串,返回给界面
将List类型数组转换为JSon格式的对象字符串,返回给界面 所需要导入的包: 编写bean: package com.west.webcourse.po; /** * 第01步:编写bean类, * ...
- linux下创建的符号链接的权限
今天为shell脚本创建符号链接的时候突然发现的, 创建的符号链接文件的默认权限是 777, 而想要这个脚本可执行, 必须为真正的文件加上 x 权限才可以.