Hibernate基础配置总结(待完善)

一、表名和类名不一致的时候
1、Annotation方法:添加@Table(name="实际数据库的表名")注释(注意,是javax.persistence标准的);
2、xml方法:
二、字段名和属性名不同的时候
1、Annotation方法:添加@Column(name="实际数据库的字段名");
2、xml方法:
三、不需要将实体类中的某个属性存到数据库中
1、Annotation方法:添加@Transient注解
2、xml方法:不写对应xml配置文件;
四、日期时间的映射
1、Annotation方法:添加@Temporal(Temporal.XXX)指定时间精度;
2、xml方法:指定type
五、映射枚举类型
1、Annotation方法:添加@Enumerated(value=EnumType.XXX)指定枚举类型的映射类别;
2、xml方法:很麻烦;

 

示例代码:
package yan;

import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.Id;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;

@Entity
public class Teacher {
private int id;

private String name;

private String title;

private String wifeName;

private Date time;

private Career c;

@Temporal(TemporalType.DATE)
public Date getTime() {
return time;
}

public void setTime(Date time) {
this.time = time;
}

@Transient
public String getWifeName() {
return wifeName;
}

public void setWifeName(String wifeName) {
this.wifeName = wifeName;
}

@Id
public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}

@Enumerated(EnumType.STRING)
public Career getC() {
return c;
}

public void setC(Career c) {
this.c = c;
}

}

posted on 2010-08-17 08:59  基斯盐  阅读(291)  评论(0编辑  收藏  举报

导航