hibernate外键对应设置
来源:互联网 发布:知商金融官网 编辑:程序博客网 时间:2024/05/17 02:07
A. 多对一
a.1 新建Web project---many2one
a.2 添加hibernate支持
a.3 先进入DB Browser配置表中“一”的那一方。
a.4 配置“多”的那一方,其它的一样,最后一步:打倒数第二个勾。
a.5 建立一个测试类测试一下。
package com.yenange.dao;
import org.hibernate.Session;
import com.yenange.entity.JD;
public class JDDao {
public static void main(String[] args) {
Session session =util.HibernateSessionFactory.getSession();
JD jd=(JD)session.get(JD.class, 2);
System.out.println(jd.getJd());
System.out.println(jd.getTblQx().getQx());
}
}
至此,全部完成。
总结:其实很简单。1、把“一”按最普通的方式反转;2、把“多”按普通方式反转,最后一步倒数第二个勾上就好。
B. 一对多
b1. 新建项目
b2. 添加hibernate支持
添加过程与“一对多”相同,都是指定了一个util包,不再赘述。添加后的项目如下:
b3. 把“多”先按最普通的方式建好。
b4. “一”前面基本上是普通的,仅最后一步,最下面的勾打上就好了。
b5. 做一个测试类试一下.
package com.yenange.dao;
import java.util.Set;
import org.hibernate.Session;
import com.yenange.entity.JD;
import com.yenange.entity.QX;
public class Test {
public static void main(String[] args) {
Session session =util.HibernateSessionFactory.getSession();
QX qx=(QX)session.get(QX.class, 1);
System.out.println(qx.getQx());
Set<JD> set=qx.getTblJds();
System.out.println("总数:"+set.size());
for (JD jd : set) {
System.out.println(jd.getJd());
}
}
}
至此,全部完成。
总结:其实很简单。1、把“多”按最普通的方式反转;2、把“一”按普通方式反转,最后一步倒数第一个勾上就好。
C. 双向一对多
c1. 建立项目,添加hibernate支持
c2. 反转配置: 选中两个表
c3. 最后一步。最下面的两个勾要打上。两个表分别配一下,仅Class name不同而已。
c4. 复制一个BaseHibernateDAO类过来。项目情况:
新建一个区县的DAO
c5. 做一个测试类:
package com.yenange.dao;
import com.yenange.entity.JD;
import com.yenange.entity.QX;
public class QXDAO extends BaseHibernateDAO {
public static void main(String[] args) {
QX qx=new QX();
qx.setQx("海珠区");
QXDAO dao=new QXDAO();
dao.add(qx);
QX qx2=(QX)dao.get(QX.class, 22);
JD jd=new JD();
jd.setJd("新港西路");
jd.setTblQx(qx2);
dao.add(jd);
}
}
c6. 对于删除等可能涉及到外键的:
1、区县(“一”)的那一方的映射文件:
<set name="tblJds" inverse="true" cascade="all">
2. 测试文件添加代码:
dao.delete(QX.class, 22);//成功!!
D 多对多
d1. 创建项目
d2. 选中两张表, 进行反转
说实在的,感觉最后一个应该是Hibernate比代码生成器更强大的地方,可惜没有讲完。有空再研究吧!
- hibernate外键对应设置
- ssh_ch06:hibernate外键对应设置
- hibernate @Id设置对应相应数据库 自增长方式
- hibernate获取外键ID对应的name及其他属性值
- Hibernate对应关系详解
- Hibernate对应关系详解
- Hibernate 对应关系配置
- hibernate 对应关系配置
- hibernate ORM 对应关系
- Hibernate 对应时间类型
- hibernate对应驱动程序
- hibernate对应关系
- hibernate ORM 对应关系
- hibernate一对一对应关系
- MySql中LongText字段对应Hibernate映射文件的设置(转)
- 主机名对应ip设置
- hibernate新增一条带有外键的数据记录的时候,一定要先将外键对应的对象持久化
- hibernate-java-sql数据类型对应
- 排序
- gdb 调试入门
- 中国移动 待遇之我见
- cocos2d-x学习笔记(三)让精灵按照自己设定的运动轨迹行动(曲线移动)。(以椭圆轨迹为例)。
- (转)Consuming Web Services in Oracle
- hibernate外键对应设置
- 你猜它是个什么点
- Linux 创建 Oracle 11g r2 asm磁盘出错
- 黑马程序员_Java中的多线程(线程的生命周期)
- iOS中如何判断是否有网络
- android 属性系统
- 还有这样的形状
- 盘点2012年十大神优化与渣优化游戏
- PHP学习 新闻系统 js编辑框的制作 添加新闻操作