hibernate框架中pojo类的映射配置的写法

这是结构图

这是pojo类

package com.wang.erp.domain;

import java.io.Serializable;

import org.apache.poi.poifs.property.Parent;

public class Dept implements Serializable{

    private String id;
    private String deptName;
    private Dept parent;
    private Integer state;
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getDeptName() {
        return deptName;
    }
    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }
    public Dept getParent() {
        return parent;
    }
    public void setParent(Dept parent) {
        this.parent = parent;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    
}

这是对应的hbm.xml文件

<?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 package="com.wang.erp.domain">
<!-- class中name属性配置的是当前程序中Javabean的全路径名,但是考虑到domain包中会包含
很多的Javabean属性,所以可以在hibernatemapping中加上package属性,这样就不必在下面每次
配置类的限定名是重复写报名,只需要写类名就可以了
 -->
<!-- table中配置的属性是当前javabean在数据库中映射的表名, -->
    <class name="Dept" table="DEPT_P" dynamic-insert="true" dynamic-update="true">
        <id name="id" column="DEPT_ID">
        <!-- 主键生成策略:native:选择本地数据库的主键管理方式,increment:(sql)自增,
            sequence:(oracle)序列,uuid:用于字符串作为主键,assigned,identity -->
            <generator class="uuid"></generator>
        </id>
        <property name="deptName" column="DEPT_NAME"></property>
        <property name="state" column="STATE"></property>
        <!--配置多对一 name:对应的一方的Javabean属性名称,class:当前类的全限定名 ,column:对应表中的字段-->
        <many-to-one name="parent" class="Dept" column="PARENT_ID"></many-to-one>
    </class>
    
</hibernate-mapping>

不知道怎么用CSDN上传代码了,将就吧

 

 

展开阅读全文

没有更多推荐了,返回首页