hibernate單實體的級聯查詢

來源:互聯網
上載者:User
其實單實體的一對多和多對一和2個實體的用法是一樣的,現在以user為例:

java代碼:

package com.test.bean;

import java.util.Set;

public class User
{
private Integer id;
private String firstname;
private String lastname;
private Integer parentID;
private int age;
private Set childrens;
private User user;

public Set getChildrens() {
return childrens;
}

public void setChildrens(Set childrens) {
this.childrens = childrens;
}

public User getUser() {
return user;
}

public void setUser(User user) {
this.user = user;
}

public Integer getId()
{
return id;
}

public void setId(Integer id)
{
this.id = id;
}

public String getFirstname()
{
return firstname;
}

public void setFirstname(String firstname)
{
this.firstname = firstname;
}

public String getLastname()
{
return lastname;
}

public void setLastname(String lastname)
{
this.lastname = lastname;
}

public int getAge()
{
return age;
}

public void setAge(int age)
{
this.age = age;
}

public Integer getParentID() {
return parentID;
}

public void setParentID(Integer parentID) {
this.parentID = parentID;
}

}


對應的hbm檔案:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
<class name="com.test.bean.User" table="users">
<id name="id" type="java.lang.Integer" column="id">
<generator class="increment"></generator>
</id>

<property name="firstname" type="string" column="firstname"
length="50">
</property>
<property name="lastname" type="string" column="lastname"
length="50">
</property>
<property name="age" type="java.lang.Integer" column="age"></property>

<set name="childrens" inverse="true"
lazy="false" where=" age=4">
<key>
<column name="parentID" />
</key>
<one-to-many class="com.test.bean.User" />
</set>
<many-to-one name="user" column="parentID" class="com.test.bean.User"></many-to-one>

</class>
</hibernate-mapping>

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.