java-Spring JPA休眠重复
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-Spring JPA休眠重复,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3036字,纯文字阅读大概需要5分钟。
内容图文
![java-Spring JPA休眠重复](/upload/InfoBanner/zyjiaocheng/662/41db348800c343aea6e811c743ae8978.jpg)
嗨,我是这个世界的新手.
我正在使用Spring JPA Hibernate进行自己的应用程序.
我有一个实体类.它可以正常工作,但可以复制属性.
我的代码如下所示:
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.validation.constraints.NotNull;
@Entity
public class Event {
@Id
@GeneratedValue
private Integer id;
public Integer getId() {
return id;
}
@Column(nullable = false)
public void setId(Integer id) {
this.id = id;
}
/*------------------------------ title ------------------------*/
private String title;
@Column(nullable = false)
public String getTitle() {
return title;
}
@Column(nullable = false)
public void setTitle(String title) {
this.title = title;
}
/* [Note] I have two extra ids : event_id, eventId
- so these are not the case of the duplication. */
/*------------------- event_id -----------------------------*/
private String event_id;
public String getEvent_id() {
return event_id;
}
public void setEvent_id(String event_id) {
this.event_id = event_id;
}
/*-------------- eventId -------------------------------------*/
@Column(unique = true)
private String eventId;
public String getEventId() {
return eventId;
}
public void setEventId(String eventId) {
this.eventId = eventId;
}
/*------------------------------ publishedDate ------------------------------------------*/
private String publishedDate;
public String getPublishedDate() {
return publishedDate;
}
@Column(nullable = false)
public void setPublishedDate(String publishedDate) {
this.publishedDate = publishedDate;
}
/*--------------------------------- endTime -----------------------------------*/
private String endTime;
public String getEndTime() {
return endTime;
}
@Column(nullable = false)
public void setEndTime(String endTime) {
this.endTime = endTime;
}
/*-------------------------------- user ------------------------------------------*/
@ManyToOne
@JoinColumn(name="user_id")
private User user;
public User getUser() {
return user;
}
@Column(nullable = false)
public void setUser(User user) {
this.user = user;
}
然后,当我检查JPA图时,它具有多个属性的重复项.
我添加了JPA图表图像(红色部分已重复)
这是我的第一个Java编程应用程序.
所以请理解,即使我阅读了spring jpa的文档,
很难弄清楚我在代码中到底做错了什么.
有任何想法吗?提前致谢.
解决方法:
问题在于JPA需要字段级别的注释或访问者(获取程序/设置程序)注释.但是,您同时使用这两种方法,基本上是不允许的.从访问器中删除所有他注释,仅将它们放在字段中.
关于Java编程(样式)的小提示将您的字段放在类之上,而不是在访问器之间.
@Entity
public class Event {
@Id
@GeneratedValue
private Integer id;
@Column(unique = true)
private String eventId;
private String event_id;
@Column(nullable = false)
private String title;
@Column(nullable = false)
private String publishedDate;
@Column(nullable = false)
private String endTime;
@ManyToOne
@JoinColumn(name="user_id")
@Column(nullable = false)
private User user;
// Getters / Setters omitted
}
从访问器中删除注释,您还真的要设置ID吗?我不希望如此,因此您可能要删除setId方法.
内容总结
以上是互联网集市为您收集整理的java-Spring JPA休眠重复全部内容,希望文章能够帮你解决java-Spring JPA休眠重复所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。