注解Annotation的解决方法,xml不做讨论
hibernate文档推荐使用javax.persistence而不是org.hibernate.annotation
如果数据库表名和类名不一样,可在类前面加上注解@Table如,
@Table(name="_student") //表示Student类对应_student这张表
如果字段名不一样
@Column(name="_name") //name属性对应数据库字段_name
@Entity
//@Table(name="_student")//表示Student类对应_student这张表
public class Student {
private int id;
private String name;
private int age;
@Id
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
//@Column(name="_name")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
//@Transient//使这个属性透明,即不写入数据库
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
但是,如果放在成员变量上,hibernate就可以影响私有的成员变量,所以不推荐放在成员变量上。