如下两段hibernate实体代码:
@Entity
@Table(name = "NumberIncrement")
public class NumberIncrementModel implements Serializable {
/**
* serialVersionID.
*/
private static final long serialVersionUID = -1555659864049096945L;
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Long id;
@Column(name = "NUMBER_INCREMENT")
private Integer numberIncrement;
public NumberIncrementModel(Integer numberIncrement) {
this.numberIncrement = numberIncrement;
}
}
@Entity
@Table(name = "JBPM4_NUMBER_INCRECMENT")
public class NumberIncrementModel implements Serializable {
/**
* serialVersionID.
*/
private static final long serialVersionUID = -1555659864049096945L;
private Long id;
public void setId(Long id) {
this.id = id;
}
public void setNumberIncrement(Integer numberIncrement) {
this.numberIncrement = numberIncrement;
}
private Integer numberIncrement;
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
public Long getId() {
return id;
}
@Column(name = "NUMBER_INCREMENT")
public Integer getNumberIncrement() {
return numberIncrement + 2;
}
public NumberIncrementModel(Integer numberIncrement) {
this.numberIncrement = numberIncrement;
}
}
第一种注解放在字段上,第二种注解放在get方法上。当执行插入操作时,数据库中记录是不同的。
NumberIncrementModel numberIncrementModel = new NumberIncrementModel(2);
XXXService.insertNumberIncrecement(numberIncrementModel);
其中第一种方式插入的记录的NUMBER_INCREMENT字段值为2,第二种为4.
从这里我们可以推论出,hibernate会根据注解的位置来觉得提取实体属性的方式:是采用标准的JavaBean的get方法,还是直接采用放射。
分享到:
相关推荐
以下是对标题和描述中涉及的Hibernate映射注解的详细解释: 1. **@Entity(name="EntityName")**:此注解用于标记一个类作为JPA实体,它代表数据库中的一个表。`name`参数是可选的,用于指定实体在数据库中的表名,...
- Hibernate:通过Hibernate的注解API,可以直接在JavaBean中定义数据库映射,简化ORM(对象关系映射)过程。 - MyBatis:MyBatis允许在Mapper接口和XML映射文件中使用注解,实现SQL语句的动态生成。 5. **工具...
在Java的持久化框架Hibernate中,注解是用于简化对象关系映射(ORM)的一种方式。本篇文章将详细探讨在Hibernate中如何使用注解来处理各种关联关系,特别是`mappedBy`属性的用法。 首先,`@OneToMany`注解用于表示...
- **实体类**:定义 Java 实体类,并使用 Hibernate 的注解或 XML 文件描述类与数据库表之间的映射关系。 3. **示例代码**: - 给定的示例代码中,可以看到 `SchemaExport` 类的使用方式。 #### 三、核心代码...
2. 使用注解或XML映射文件建立实体类字段与数据库列的映射。 3. 确定合适的Mysql数据库数据类型以满足业务需求。 4. 如需自定义类型映射,实现`UserType`接口。 了解并熟练掌握这些配置,能帮助开发者更高效地使用...
本主题聚焦于“Hibernate双向一对一关联映射”的注解实现,这是一种高级的数据库设计模式,用于处理两个实体之间一对一的关系。 在Hibernate中,一对一关联映射分为单向和双向。单向一对一映射通常涉及一个实体持有...
本文档将详细介绍 Hibernate 中的注解使用方法,这些注解主要用于配置对象与数据库之间的映射关系。 #### 二、核心注解介绍 ##### 1. @Entity - **作用**:标记一个类为实体类,表示它可以被持久化到数据库中。 - ...
本训练主要关注在使用Hibernate时如何处理与各种数据库字段类型的映射,这对于理解和优化数据库交互至关重要。 首先,我们要理解Hibernate的核心概念——对象关系映射(ORM)。ORM允许我们将数据库表结构映射到Java...
【压缩包子文件的文件名称列表】:“hibernate映射文件自动生成.doc”很可能是这篇博文的文档形式,其中详细介绍了具体的操作步骤、使用工具或者自定义脚本,以帮助开发者理解并应用自动化的映射文件生成过程。...
在Java世界中,ORM(Object-Relational Mapping)框架如Hibernate极大地简化了数据库操作,将对象与数据库表之间的映射关系进行了抽象。本篇主要探讨的是Hibernate中的一对多关联映射,它允许一个实体对象对应数据库...
**hibernate映射与查询** Hibernate 是一个流行的 Java 应用程序开发框架,它提供了一个持久层解决方案,简化了数据库操作。对于初学者来说,理解 Hibernate 的映射和查询机制是至关重要的,因为它们构成了 ...
Hibernate,作为Java中广泛使用的对象关系映射(ORM)框架,提供了一种优雅的方式来映射枚举类型到数据库。本文将深入探讨Hibernate如何映射枚举类型,并给出实际应用示例。 ### Hibernate枚举映射方式 #### 1. `@...
在这个“hibernate双向多对多关联映射(注解版)”的主题中,我们将深入探讨如何使用Hibernate的注解配置来处理数据库中的双向多对多关联关系。 首先,多对多关联在数据库设计中是指两个实体之间存在多个对应关系,...
综上所述,Hibernate的一对一关联映射通过注解方式提供了便捷的数据库表与Java对象之间的绑定,理解并正确使用这些注解对于优化数据访问性能、保证数据一致性至关重要。在设计数据库模型时,应充分考虑实体之间的...
此外,自定义对象的映射是Hibernate映射中的一个重要部分。通过在实体类上使用@Entity注解,并使用@Id注解指定主键字段,可以将一个Java类映射到数据库的一张表。字段则通过@Column注解来指定列名和属性,如长度、...
常见的注解包括@Entity(定义实体类)、@Table(指定表名)、@Id(主键)、@GeneratedValue(生成策略)、@Column(字段映射)、@OneToMany、@ManyToOne、@OneToOne和@ManyToMany(关联映射)等。 3. **环境设置**...
1. **对象关系映射**:Hibernate通过XML映射文件或注解,将数据库表与Java对象对应起来,实现了数据库操作的对象化,使得开发者可以像操作普通Java对象一样操作数据库记录。 2. **查询语言(HQL)**:Hibernate提供...
Hibernate属性级别注解是Hibernate ORM框架中用于在Java对象(实体类)的属性上定义数据库映射的关键元素。这些注解使得开发人员能够无需XML配置文件就能声明对象与数据库之间的映射关系,从而简化了开发过程。以下...