映射元数据是什么样的?不设置默认的情况下: 实体类Person生成表是Person表; 字段id,name,采用bean中getXXX、setXXX的XXX名称作为字段的名称,而不是采用属性的名称作为字段名称;
Person.java
package cn.itcast.bean;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import java.util.Date;
@Entity //以javax开发的包,都是Sun公司制定的一些规范
@Table(name = "PersonTable") //改变数据库中映射表名
public class Person {
private Integer id;
private String name;
private Date birthday; //1987-12-10
private Gender gender = Gender.MAN; //这里可以设置默认值, Gender是一个枚举类型。
@Enumerated(EnumType.STRING) //说明这个属性是个枚举类型,括号内的表示存入数据库的枚举字符串而不是枚举索引
@Column(length = 5, nullable = false) //Eclipse代码助手快捷键为ALT+/
public Gender getGender() {
return gender;
}
public void setGender(Gender gender) {
this.gender = gender;
}
@Temporal(TemporalType.DATE) //说明这个属性映射到数据库中是一个日期类型,括号中的是日期格式
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public Person() {
/* 对象是由Hibernate为我们创建的,当我们通过ID来获取某个实体的时候,这个实体给我们返回了这个对象的创建是由Hibernate内部通过反射技术来创建的,反射的时候用到了默认的构造函数,所以这时候必须给它提供一个public的无参构造函数。*/
}
public Person(String name) {
this.name = name;
}
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
// auto是默认值,可不写,直接写@GeneratedValue
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
@Column(length = 10, nullable = false, name = "personName")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
@Column 的选项。 看图:
@Temporal 的选项。 看图:
@Temporal(TemporalType.)的选项。 看图:
@Enumerated(EnumType.) 的选项。 看图:
- 大小: 21.4 KB
- 大小: 10.1 KB
- 大小: 29.7 KB
- 大小: 20.9 KB
分享到:
相关推荐
05_JPA详解_日期_枚举等字段类型的JPA映射.zip 05_JPA详解_日期_枚举等字段类型的JPA映射.zip
05_传智播客JPA详解_日期_枚举等字段类型的JPA映射
JPA用于整合现有的ORM技术,可以简化现有Java EE和Java SE应用对象持久化的开发工作,实现ORM的统一。JPA详解视频教程 第5讲 日期_枚举等字段类型的JPA映射.avi
07_JPA详解_使用JPA加载_更新_删除对象.zip 07_JPA详解_使用JPA加载_更新_删除对象.zip
06_传智播客JPA详解_大数据字段映射与字段延迟加载
08_JPA详解_分析JPA与持久化实现产品对接的源代码.zip 08_JPA详解_分析JPA与持久化实现产品对接的源代码.zip
jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联映射jpa 关联...
56_传智播客巴巴运动网_设置产品实体对象的JPA映射56_传智播客巴巴运动网_设置产品实体对象的JPA映射
03_JPA详解_搭建JPA开发环境和全局事务介绍.zip
JPA映射关系,多种映射关系的图解,适合EJB初学者,对JPA映射关系的了解.
基于_Struts_2+Spring+JPA_框架的WEB_应用
JPA实体映射对时间字段的处理,使用的JPA比较流行
JPA JAPJPA JAPJPA JAPJPA JAPJPA JAPJPA JAPJPA JAPJPA JAPJPA JAPJPA JAP
通过Oracle提供的jar包,实现jpa方式对sdo_geometry的快速支持。
JPA视频_映射单向多对一的关联关系 · 13. JPA视频_映射单向一对多的关联关系 · 14. JPA视频_映射双向一对多的关联关系 · 15. JPA视频_映射双向一对一的关联关系 · 16. JPA视频_映射双向多对多的关联关系 ...
JPA视频教程_使用jpa映射单个实体对象
ssh-jpa实例,是ssh-jpa入门的必备参考。
使用jpa映射关联和继承
ZK集成Spring和JPA增删改查DEMO