- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在创建一个 Java Spring Boot 项目。我遇到了其中一个表的外键问题,其中空值被插入到外键字段中。我无法解决该问题,因此我使用 Eclipse IDE 的 Hibernate 配置重新创建了实体代码。现在我可以启动应用程序,但在 Postman 中收到以下错误。
{
"timestamp": 1519124137813,
"status": 500,
"error": "Internal Server Error",
"exception": "org.springframework.orm.jpa.JpaSystemException",
"message": "could not deserialize; nested exception is org.hibernate.type.SerializationException: could not deserialize",
"path": "/employee/"
}
{
"timestamp": 1519125015097,
"status": 500,
"error": "Internal Server Error",
"exception": "org.springframework.orm.jpa.JpaSystemException",
"message": "could not deserialize; nested exception is org.hibernate.type.SerializationException: could not deserialize",
"path": "/employee/101/timelog/tabdata"
}
我的疑问:我使用的是localdateconverter。我怀疑是否是日期转换问题
//员工
// default package
// Generated Feb 18, 2018 3:41:47 PM by Hibernate Tools 5.2.3.Final
/**
* Employee generated by hbm2java
*/
@Entity
@Table(name = "employee", catalog = "timesheet")
public class Employee implements java.io.Serializable {
private static final long serialVersionUID = -8265127921786950582L;
private Integer empId;
@JsonIgnore
private Organisation organisation;
private String designation;
private String email;
private String empName;
private String gender;
private LocalDate joinDate;
private Set<Timelog> timelogs = new HashSet<Timelog>(0);
public Employee() {
}
public Employee(Organisation organisation) {
this.organisation = organisation;
}
public Employee(Organisation organisation, String designation, String email, String empName, String gender,
LocalDate joinDate, Set<Timelog> timelogs) {
this.organisation = organisation;
this.designation = designation;
this.email = email;
this.empName = empName;
this.gender = gender;
this.joinDate = joinDate;
this.timelogs = timelogs;
}
public Employee(String empName, LocalDate joinDate, String gender, String designation, String email) {
// TODO Auto-generated constructor stub
this.empName = empName;
this.joinDate = joinDate;
this.gender = gender;
this.designation = designation;
this.email = email;
}
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "emp_id", unique = true, nullable = false)
public Integer getEmpId() {
return this.empId;
}
public void setEmpId(Integer empId) {
this.empId = empId;
}
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "org_id", nullable = false)
public Organisation getOrganisation() {
return this.organisation;
}
public void setOrganisation(Organisation organisation) {
this.organisation = organisation;
}
@Column(name = "designation", length = 45)
public String getDesignation() {
return this.designation;
}
public void setDesignation(String designation) {
this.designation = designation;
}
@Column(name = "email", length = 45)
public String getEmail() {
return this.email;
}
public void setEmail(String email) {
this.email = email;
}
@Column(name = "emp_name", length = 45)
public String getEmpName() {
return this.empName;
}
public void setEmpName(String empName) {
this.empName = empName;
}
@Column(name = "gender", length = 10)
public String getGender() {
return this.gender;
}
public void setGender(String gender) {
this.gender = gender;
}
//@Temporal(TemporalType.DATE)
@Column(name = "join_date", length = 10)
public LocalDate getJoinDate() {
return this.joinDate;
}
public void setJoinDate(LocalDate joinDate) {
this.joinDate = joinDate;
}
@OneToMany(fetch = FetchType.LAZY, mappedBy = "employee")
public Set<Timelog> getTimelogs() {
return this.timelogs;
}
public void setTimelogs(Set<Timelog> timelogs) {
this.timelogs = timelogs;
}
public void addLog(Timelog log) {
Set<Timelog> set = this.getTimelogs();
set.add(log);
this.setTimelogs(set);
}
}
//组织
/**
* Organisation generated by hbm2java
*/
@Entity
@Table(name = "organisation", catalog = "timesheet")
public class Organisation implements java.io.Serializable {
/**
*
*/
private static final long serialVersionUID = 5790958954280933376L;
private Integer orgId;
private String address;
private Integer contactNo;
private String email;
private String name;
private Set<Employee> employees = new HashSet<Employee>(0);
public Organisation() {
}
public Organisation(String address, Integer contactNo, String email, String name, Set<Employee> employees) {
this.address = address;
this.contactNo = contactNo;
this.email = email;
this.name = name;
this.employees = employees;
}
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "org_id", unique = true, nullable = false)
public Integer getOrgId() {
return this.orgId;
}
public void setOrgId(Integer orgId) {
this.orgId = orgId;
}
@Column(name = "address", length = 45)
public String getAddress() {
return this.address;
}
public void setAddress(String address) {
this.address = address;
}
@Column(name = "contact_no")
public Integer getContactNo() {
return this.contactNo;
}
public void setContactNo(Integer contactNo) {
this.contactNo = contactNo;
}
@Column(name = "email", length = 45)
public String getEmail() {
return this.email;
}
public void setEmail(String email) {
this.email = email;
}
@Column(name = "name", length = 45)
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
@OneToMany(fetch = FetchType.LAZY, mappedBy = "organisation")
public Set<Employee> getEmployees() {
return this.employees;
}
public void setEmployees(Set<Employee> employees) {
this.employees = employees;
}
}
//时间日志表
@Entity
@Table(name = "timelog", catalog = "timesheet")
public class Timelog implements java.io.Serializable {
private static final long serialVersionUID = 1871977717947082854L;
private Integer id;
private Employee employee;
private LocalDate logDate;
private String project;
private Float timetaken;
public Timelog() {
}
public Timelog(Employee employee) {
this.employee = employee;
}
public Timelog(Employee employee, LocalDate logDate, String project, Float timetaken) {
this.employee = employee;
this.logDate = logDate;
this.project = project;
this.timetaken = timetaken;
}
public Timelog(LocalDate logDate, String project, float timetaken) {
this.logDate = logDate;
this.project = project;
this.timetaken = timetaken;
}
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "id", unique = true, nullable = false)
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "emp_id", nullable = false)
public Employee getEmployee() {
return this.employee;
}
public void setEmployee(Employee employee) {
this.employee = employee;
}
//@Temporal(TemporalType.DATE)
@Column(name = "logDate", length = 10)
public LocalDate getLogdate() {
return this.logDate;
}
public void setLogdate(LocalDate logDate) {
this.logDate = logDate;
}
@Column(name = "project", length = 45)
public String getProject() {
return this.project;
}
public void setProject(String project) {
this.project = project;
}
@Column(name = "timetaken", precision = 12, scale = 0)
public Float getTimetaken() {
return this.timetaken;
}
public void setTimetaken(Float timetaken) {
this.timetaken = timetaken;
}
}
我已经包含了我正在使用的实体的代码 - 组织、员工和时间日志。
最佳答案
我终于解决了这个问题。这是由于重命名了在其中重新创建实体代码的文件夹而引起的。我将文件夹名称更改为之前的名称,问题得到解决
关于java - Hibernate Java - 无法反序列化/无效流头错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48884018/
我正在阅读 Python 文档以真正深入了解 Python 语言,并遇到了 filter 和 map 函数。我以前使用过过滤器,但从未使用过映射,尽管我在 SO 上的各种 Python 问题中都见过这
当我尝试打印 BST 的级别顺序时,这个问题提示了我。 这是一个 Pre-Order Sequence: 4, 1, 2, 3, 5, 6, 7, 8 In_order Sequence : 1, 2
我的代码在 main(序列测试;)的第一行出现错误,指出它是对 sequence::sequence() 的 undefined reference 。我无法更改 main 中的代码。有谁知道我该如何
这可能很简单,但我在通常的 latex 指南中找不到任何相关内容。在这句话中: {\em hello\/} “\/”的目的是什么? 最佳答案 这就是所谓的斜体校正。其目的是确保斜体文本后有适当的间距。
当我从 Postgresql 表中删除所有记录,然后尝试重置序列以在插入时开始一个编号为 1 的新记录时,我得到不同的结果: SELECT setval('tblname_id_seq', (SELE
在版本10.0.3中,MariaDB引入了一种称为序列的存储引擎。 其ad hoc为操作生成整数序列,然后终止。 该序列包含正整数,以降序或升序排列,并使用起始,结束和递增值。 它不允许在多个查询中
如何在 Groovy 中获取给定数字的序列,例如: def number = 169 // need a method in groovy to find the consecutive number
基本上,如果这是 .NET,它看起来像这样: ISomething { string A { get; } int B { get; } } var somethings = new List
说以下代码部分(同一块): A <= 1 A <= 2 变量 A 总是被赋值为 2 吗?还是会出现竞争条件并分配 1 或 2? 我对非阻塞赋值的理解是,由硬件在 future 分配变量 A,因此它可能
在运行 WiX 设置时,我正在寻找操作列表及其顺序。不知何故,官方网站似乎没有提供任何信息。 基本问题是我想正确安排我的自定义操作。通常我需要使用 regsvr32.exe 注册一个 DLL,而这只能
F#初学者在这里 我想创建一个类型,它是具有至少一个元素的另一种具体类型(事件)的序列。任何其他元素都可以在以后随时添加。通常在 C# 中,我会创建一个具有私有(private) List 和公共(p
作为构建过程和不断发展的数据库的一部分,我试图创建一个脚本,该脚本将删除用户的所有表和序列。我不想重新创建用户,因为这将需要比所允许的更多的权限。 我的脚本创建了一个过程来删除表/序列,执行该过程,然
我想恢复两个向量的第一个日期和相同向量的第二个日期之间的日期序列,.... 这是一个例子: dates1 = as.Date(c('2015-10-01', '2015-03-27', '2015-0
这个问题已经有答案了: sql ORDER BY multiple values in specific order? (12 个回答) 已关闭 9 年前。 我有一个 sql 语句,我想要ORDER
我想恢复两个向量的第一个日期和相同向量的第二个日期之间的日期序列,.... 这是一个例子: dates1 = as.Date(c('2015-10-01', '2015-03-27', '2015-0
在用java编写代码时,我需要用“],[”分割字符串。下面是我的代码。 try (BufferedReader reader = new BufferedReader(new InputStreamR
这个问题已经有答案了: Project Euler Question 14 (Collatz Problem) (8 个回答) 已关闭 9 年前。 我正在尝试查找数字的 Collatz 序列。以下
我有一个例程函数process_letter_location(const char& c, string &word)。 在我的 main 中,我声明了一系列字符串变量,如下所示: string s
我需要找到最长的多米诺骨牌链,给定一组 12 个随机挑选的多米诺骨牌。我已经递归地生成了多米诺骨牌的所有可能性(使用 0 到 12 的面值有 91 种可能性)。多米诺骨牌由一 block “砖 blo
我有这个数据结构 Seq,它继承了类 vector 但有一些额外的功能。使用这个数据结构 Seq 我有这个预定义的数据结构: typedef Seq > MxInt2d; 我现在想要一个包含多个 Mx
我是一名优秀的程序员,十分优秀!