10-hibernate单表操作-组件属性

组件属性:

实体类中某个属性属于用户自定义的类的对象,比如在实体类中某个属性是自定义类的对象:

这个Address是一个用户自定义类。

该自定义类Address定义如下:

//地址类
public class Address {
    
    private String postcode;//邮编
    private String phone;//电话
    private String address;//地址
    
    public Address()
    {
    }
    public Address(String postcode, String phone, String address) {
        //super();
        this.postcode = postcode;
        this.phone = phone;
        this.address = address;
    }

    public String getPostcode() {
        return postcode;
    }

    public void setPostcode(String postcode) {
        this.postcode = postcode;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }
}

实体类中修改如下:

Test类中修改如下:

标准注册规则如下:address表示对应实体类中的属性名,class表示自定义类名,

下面的postcode表示自定义类中的属性名,表示对应数据库中字段。

在hbm.xml文件中注册如下:

 执行完后查询结果:

原文地址:https://www.cnblogs.com/alsf/p/7821656.html