zoukankan      html  css  js  c++  java
  • hibernate 级联操作

    级联:当你存储一个表的内容想值得相关联的表也存储数据时,可以通过级联来实现(cascade) @Entity @Table(name="t_User") public class User { private int id; private String name; private Grup grup; @ManyToOne(cascade={CascadeType.ALL}) //all:意为级联全部,牵一发而动全身,只要是其中一个表进行数据库操作,另一个也会跟着进行操作 public Grup getGrup() { return grup; } public void setGrup(Grup string) { this.grup = string; } @Id @GeneratedValue 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; } public User(int id, String name) { super(); this.id = id; this.name = name; } public User() { } }

    test单元测试:按道理,可以分别存储user和grup的内容,但是结果不是这样的,grup的内容是空值,这时级联就登上表演舞台 public class ManyToOneTest { @Test public void testSaveUser() { User u = new User(); u.setName("Judy"); Grup g =new Grup(); g.setName("Linda"); u.setGrup(g);; @SuppressWarnings("deprecation") SessionFactory sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory(); Session session =sessionFactory.getCurrentSession(); session.beginTransaction(); session.save(u); session.getTransaction().commit(); }

    }

    由结果可知,数据已经插入到对应的表中

    注意:级联只是可以让写程序的人在操作过程中较为省事,但是并非必需要用到,如果想要把多表的数据内容分先后顺序,完全可以手动存储,不用级联操作。

  • 相关阅读:
    CSS系列:长度单位&字体大小的关系em rem px
    CSS兼容性
    html5+css3
    将url的查询参数解析成字典对象
    SQL阻止保存要求重新创建表的更改 在哪里设置
    Jquery&JS简单选项卡
    块级&行内(内联)元素
    时间
    PHP 二维数组根据某个字段排序
    php 操作数组 (合并,拆分,追加,查找,删除等)
  • 原文地址:https://www.cnblogs.com/Believer/p/5622208.html
Copyright © 2011-2022 走看看