这是一个接近我实际代码的示例:
@Entity
@Table(name="Products")
@Data
public class Product{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="productno")
private long ID;
@Column(name="name")
private String productName;
private ProductCategory category;
}
@Entity
@Table(name="Category")
@Data
public class ProductCategory{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="categoryno")
private long ID;
@Column(name="name")
private String categoryName;
@OneToMany
@JoinColumn(name="category")
private List<Product> product;
}
还有百里香模板,使用th:each
在表中显示了一堆和一个将数据发送到那些模板的控制器。这些模板已经过测试,应该可以使用。
问题是,bootRun
在打开页面时出现错误:
SQL.SyntaxErrorException: Unknown column 'product0_.productCategory_category'
看着此错误,似乎它试图将连接列名称读取为productCategory_category
而不是category
(这是所需的名称)
答案 0 :(得分:0)
ProductCategory
需在name="categoryno"
字段和moment("Tue Nov 26 2019 16:00:00 GMT-0800", "ddd MMM D YYYY H:m:s [GMT]ZZ").format("[/Date(]x[)/]")
上进行产品分类
答案 1 :(得分:0)
所以我已经用
解决了这个问题@Entity
@Table(name="Products")
@Data
public class Product{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="productno")
private long ID;
@Column(name="name")
private String productName;
@ManyToOne
@JoinColumn(name="category", referencedColumnName="categoryno")
private ProductCategory category;
}
@Entity
@Table(name="Category")
@Data
public class ProductCategory{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="categoryno")
private long ID;
@Column(name="name")
private String categoryName;
@OneToMany(mappedBy="category")
private List<Product> product;
}
我不知道为什么会这样,但嘿:魔术