/实体类/包实体的代码;
import java.io.Serializable;
import java.util.Collection;
import javax.persistence.Basic;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
/**
*
* @author Ashish
*/
@Entity
@Table(name = "register")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Register.findAll", query = "SELECT r FROM Register r"),
@NamedQuery(name = "Register.findById", query = "SELECT r FROM Register r WHERE r.id = :id"),
@NamedQuery(name = "Register.findByTxtEmail", query = "SELECT r FROM Register r WHERE r.txtEmail = :txtEmail"),
@NamedQuery(name = "Register.findByTxtName", query = "SELECT r FROM Register r WHERE r.txtName = :txtName"),
@NamedQuery(name = "Register.findByTxtPassword", query = "SELECT r FROM Register r WHERE r.txtPassword = :txtPassword"),
@NamedQuery(name = "Register.findByNumPhone", query = "SELECT r FROM Register r WHERE r.numPhone = :numPhone"),
@NamedQuery(name = "Register.findByTxtRole", query = "SELECT r FROM Register r WHERE r.txtRole = :txtRole"),
@NamedQuery(name = "Register.findByNumVocher", query = "SELECT r FROM Register r WHERE r.numVocher = :numVocher")})
public class Register implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "id")
private Integer id;
@Column(name = "txt_email")
private String txtEmail;
@Column(name = "txt_name")
private String txtName;
@Column(name = "txt_password")
private String txtPassword;
@Column(name = "num_phone")
private String numPhone;
@Column(name = "txt_role")
private String txtRole;
@Column(name = "num_vocher")
private String numVocher;
@OneToOne(cascade = CascadeType.ALL, mappedBy = "numVoucher")
private ElectionCard electionCard;
@OneToOne(cascade = CascadeType.ALL, mappedBy = "numVoucher")
private Address address;
@OneToOne(cascade = CascadeType.ALL, mappedBy = "numVoucher")
private Passport passport;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "numVoucher")
private Collection<AdhaarCard> adhaarCardCollection;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "numVoucher")
private Collection<PanCard> panCardCollection;
public Register() {
}
public Register(Integer id) {
this.id = id;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getTxtEmail() {
return txtEmail;
}
public void setTxtEmail(String txtEmail) {
this.txtEmail = txtEmail;
}
public String getTxtName() {
return txtName;
}
public void setTxtName(String txtName) {
this.txtName = txtName;
}
public String getTxtPassword() {
return txtPassword;
}
public void setTxtPassword(String txtPassword) {
this.txtPassword = txtPassword;
}
public String getNumPhone() {
return numPhone;
}
public void setNumPhone(String numPhone) {
this.numPhone = numPhone;
}
public String getTxtRole() {
return txtRole;
}
public void setTxtRole(String txtRole) {
this.txtRole = txtRole;
}
public String getNumVocher() {
return numVocher;
}
public void setNumVocher(String numVocher) {
this.numVocher = numVocher;
}
public ElectionCard getElectionCard() {
return electionCard;
}
public void setElectionCard(ElectionCard electionCard) {
this.electionCard = electionCard;
}
public Address getAddress() {
return address;
}
public void setAddress(Address address) {
this.address = address;
}
public Passport getPassport() {
return passport;
}
public void setPassport(Passport passport) {
this.passport = passport;
}
@XmlTransient
public Collection<AdhaarCard> getAdhaarCardCollection() {
return adhaarCardCollection;
}
public void setAdhaarCardCollection(Collection<AdhaarCard> adhaarCardCollection) {
this.adhaarCardCollection = adhaarCardCollection;
}
@XmlTransient
public Collection<PanCard> getPanCardCollection() {
return panCardCollection;
}
public void setPanCardCollection(Collection<PanCard> panCardCollection) {
this.panCardCollection = panCardCollection;
}
@Override
public int hashCode() {
int hash = 0;
hash += (id != null ? id.hashCode() : 0);
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Register)) {
return false;
}
Register other = (Register) object;
if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
return false;
}
return true;
}
@Override
public String toString() {
return "entities.Register[ id=" + id + " ]";
}
}
完整堆栈跟踪是
我注意到,当字段名为numVocher
(不带“u”)时,您有mapped=numVoucher
,请使它们一致,然后重试。
我建议您从头开始重建项目,如果不起作用,请重新访问表模式。
我有一个非常简单的Hibernate设置,但我收到这个奇怪的错误时,保存一个实体: org.hibernate.property.access.spi.属性访问字段[私有java.lang.字符串com.example.demo.Student.first名称]通过反射为持久属性[com.example.demo.学生#firstName]:学生[id=0, firstName=My, lastN
用Mysql,intellij作为IDE在Spring启动时使用JPA。 当我尝试保存游戏实体时,我会遇到以下错误,但如果保存玩家实体,则所有操作都很正常 谢谢
当我试图获得实体属性时,我遇到了奇怪的问题: 我的实体:
问题内容: 我找到了一种通过来获取继承成员并通过来获得 ; 私有成员的方法,但是我正在寻找私有的继承字段。我怎样才能做到这一点? 问题答案: 这应该演示如何解决它: (或Class.getDeclaredFields用于所有字段的数组。) 输出:
问题内容: 考虑这个例子: 允许您通过反射来访问类的私有字段似乎是不合逻辑的。为什么有这样的功能?允许这样的访问不是“危险”吗? 问题答案: 专用旨在防止意外滥用,而不是作为一种安全机制。如果您选择绕过它,那么您可以自行承担风险,并假设您知道自己在做什么。
问题内容: Java中是否可以通过反射访问私有字段str?例如获取该字段的值。 问题答案: 是。 然后,使用字段对象获取类实例上的值。 请注意,方法通常会使人们感到困惑。你有该字段,但没有该对象的实例。你必须将其传递给方法