第一次看到component这样使用。所以记下来。只记类与hbm文件,别的和hibernate别的一样
Address.java类如下:
package cn.ehoo.hibernate.domain;
/**
*@author whp
*@Email whp@ehoo.cn
*@Nov 30, 2011
*
*/
public class Address {
private String province;
private String city;
private String street;
private String zipcode;
public String getProvince() {
return province;
}
public void setProvince(String province) {
this.province = province;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getStreet() {
return street;
}
public void setStreet(String street) {
this.street = street;
}
public String getZipcode() {
return zipcode;
}
public void setZipcode(String zipcode) {
this.zipcode = zipcode;
}
}
Customer.java类如下:
package cn.ehoo.hibernate.domain;
/**
*@author whp
*@Email whp@ehoo.cn
*@Nov 30, 2011
*
*/
public class Customer {
private Integer id;
private String name;
private Address homeAddress;
private Address comAddress;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Address getHomeAddress() {
return homeAddress;
}
public void setHomeAddress(Address homeAddress) {
this.homeAddress = homeAddress;
}
public Address getComAddress() {
return comAddress;
}
public void setComAddress(Address comAddress) {
this.comAddress = comAddress;
}
}
Customer.hbm.xml 文件如下:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="cn.ehoo.hibernate.domain">
<class name="Customer" table="customer">
<id name="id" type="int">
<generator class="native" />
</id>
<property name="name" />
<component name="homeAddress" class="cn.ehoo.hibernate.domain.Address">
<property name="province" type="string" column="HOME_PROVINCE"/>
<property name="city" type="string" column="HOME_CITY"/>
<property name="street" type="string" column="HOME_STREET"/>
</component>
<component name="comAddress" class="cn.ehoo.hibernate.domain.Address">
<property name="province" type="string" column="COM_PROVINCE"/>
<property name="city" type="string" column="COM_CITY"/>
<property name="street" type="string" column="COM_STREET"/>
</component>
</class>
</hibernate-mapping>
分享到:
相关推荐
在Java开发领域,尤其是使用Spring或Hibernate框架时,“Component(组件映射)”是一个重要的概念。Component映射是Hibernate提供的一种机制,它允许我们将多个相关的简单属性或者对象封装到一个复合对象中,以此来...
03 03Hibernate_Component : 实体细粒度的划分,数据库中的一张表在程序中划分为几个部分的实体,配置文件和增、删、改、查的使用。 04 04Hibernate_Composite : 复合主键的使用,在开发中很少用到,一般良好的设计...
Hibernate是Java领域中一款广泛应用的对象关系映射(ORM)框架,它简化了数据库与Java对象之间的交互,使得开发者可以使用面向对象的方式来操作数据库。在"Hibernate_test"这个主题中,我们将深入探讨Hibernate的...
其中,`Hibernate`是JEECG的一个重要组成部分,它是Java领域中广泛使用的对象关系映射(ORM)框架,使得开发者可以通过面向对象的方式来操作数据库,而无需关心底层SQL的编写。 **1. Hibernate基础** Hibernate允许...
5. **Hibernate_Component**:这部分可能包含了Hibernate组件映射的示例。组件是对象的一部分,可以被嵌入到其他对象中,类似于数据库中的复合类型。通过@Component或@Embeddable注解,可以将一个类声明为组件,并在...
Hibernate 是一个开源的对象关系映射(ORM)框架,它允许开发者使用面向对象的方式来操作数据库,极大地简化了Java应用与数据库之间的交互。在Hibernate中,组件映射是将一个类的实例作为另一个类的一个属性进行持久...
然后,定义一个定时任务类,这个类中包含执行定时任务的方法,并且这个方法内部可以使用Hibernate的Session来执行数据库操作。 例如,你可以使用Spring的`@Scheduled`注解来定义一个定时任务: ```java import org...
尽管随着Spring Data JPA等现代技术的崛起,Hibernate的使用频率有所下降,但其核心概念和技术仍然具有重要价值,特别是对于缓存管理的理解和应用。 在一对一关联的映射中,Hibernate提供了两种方式:外键映射和...
`hibernate_component_mapping`文件可能讨论了Hibernate的组件映射。组件是一组相关的属性,它们可以作为一个整体被映射到数据库的一个或多个字段上。组件映射提供了一种有效的方式,将复杂对象分解为更小的部分,...
2. 注解驱动开发:使用@Component、@Service、@Repository和@Controller等注解标记bean。 3. 配置事务管理:使用@Transactional注解开启事务支持,配置事务管理器。 4. 整合其他框架:如整合Hibernate,需要配置...
当删除对象时, Hibernate必须使用每一个字段的值来确定一条记录(在组合元素表中,没有单独的关键字段), 如果有为null的字段,这样做就不可能了。你必须作出一个选择,要么在组合元素中使用不能为空的属性,要么...
5.1.13. 组件(component), 动态组件(dynamic-component) 5.1.14. properties 5.1.15. 子类(subclass) 5.1.16. 连接的子类(joined-subclass) 5.1.17. 联合子类(union-subclass) 5.1.18. 连接(join) 5.1.19. 键...
例如,教程中提到的版本为 `jbosstools-3.2.1.Final.component--hibernatetools-Update-2011-08-01_12-53-33-H1305.zip`。 - **安装步骤**:下载后的压缩文件需解压并放入 Eclipse 的 `dropins` 目录下,并且需要...
Spring的注解,如`@Component`、`@Service`、`@Repository`和`@Autowired`,允许开发者在不编写XML配置的情况下声明bean和管理它们的生命周期。 Hibernate是一个对象关系映射(ORM)框架,它简化了数据库操作,将...
5. **DAO层**:创建DAO(Data Access Object)接口和实现类,使用Hibernate的Session API进行数据操作。通过`@Repository`注解标记DAO实现类,使其成为Spring管理的bean。 6. **Service层**:创建Service接口和实现...
`hibernate-mapping-4.0.xsd`包含关于如何定义实体、关联(Association)、组件(Component)、集合(Collection)等的规则,而`hibernate-configuration-4.0.xsd`则定义了配置Hibernate会话工厂、缓存策略、事件...
在全注解配置中,我们可以使用`@Component`、`@Service`、`@Repository`和`@Controller`注解来标记bean,然后通过`@Autowired`自动装配依赖。Spring还支持使用`@Transactional`进行事务管理,确保数据库操作的一致性...