- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个名为 Category
的实体类。我之前用它来连接另一个实体。现在我必须使用相同的 Category
实体将数据插入 类别
表。
Category.java
@Entity
@Table(name = "category")
public class Category implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "category_id")
private Integer categoryId;
@Column(name = "category_name")
private String categoryName;
@NotFound(action=NotFoundAction.IGNORE)
@JsonIgnore
@ManyToOne
@JoinColumn(name = "parent_category_id")
private Category parentCategory;
@Column(name = "created_date")
@Temporal(javax.persistence.TemporalType.DATE)
private Date createdDate;
@Column(name = "last_updated_date")
@Temporal(javax.persistence.TemporalType.DATE)
private Date lastUpdatedDate;
@OneToMany(mappedBy = "category")
private List<Events> events;
//Getters and Setters
}
Method for insert category
@Transactional
public UserResponse createCategory(SubmitReviewRequest createCategoryRequest) throws SQLException, ClassNotFoundException, IOException {
Category category = new Category();
UserResponse userResponse = new UserResponse();
if (createCategoryRequest != null) {
category.setCategoryName(createCategoryRequest.getSubCategory());
// category.setParenCategoryId(Integer.parseInt(createCategoryRequest.getMainCategory()));
int id = adminServiceDao.saveCategory(category);
userResponse.setCode(WeekenterConstants.SUCCESS_CODE);
userResponse.setMessage("Success");
userResponse.setId(id);
}
return userResponse;
}
问题是我必须在 Category
实体中设置 parent_category_id
才能将数据保存到 Category
表中,但我使用哪一列来加入表之前。
Table
我可以在 Category
实体中设置除 parent_category_id
之外的所有值,即 categoryId,categoryName,createdDate,lastUpdatedDate
t 创建 getters 和 setters。当我尝试创建时,它显示错误 parent_category_id
列名称已使用。此错误的原因是我已使用它来加入。
Help me for use the same entity for insertion also or tell me will i need to create a separate entity for that which am not feel appropriate ?
User request sample :
{
"categoryName":"cricket",
"parentCategoryId":15
}
最佳答案
如果我理解正确的话,那么你的做法是错误的。在 hibernate 中,正确的方法是读取父类别并使用其ID(在您的情况下为1
)拥有一个持久的父类别对象,然后将您尝试保留的该类别设置为parentCategory.setParentCategory(category)
.
@Transactional
public UserResponse createCategory(SubmitReviewRequest createCategoryRequest) throws SQLException, ClassNotFoundException, IOException {
Category category = new Category();
// read parent
Category parentCategory = adminServiceDao.find(Integer.parseInt(createCategoryRequest.getMainCategory()));
UserResponse userResponse = new UserResponse();
if (createCategoryRequest != null) {
category.setCategoryName(createCategoryRequest.getSubCategory());
// category.setParenCategoryId(Integer.parseInt(createCategoryRequest.getMainCategory()));
//set the child relationship.
category.setParentCategory(parentCategory);
int id = adminServiceDao.saveCategory(parentCategory);
userResponse.setCode(WeekenterConstants.SUCCESS_CODE);
userResponse.setMessage("Success");
userResponse.setId(id);
}
return userResponse;
}
关于java - hibernate : One Entitiy class for multiple purpose?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31647542/
例如 OGRE3D 使用字符串来标识对象,因此每次代码使用对象的名称(字符串)对对象执行某些操作时,它都必须执行字符串操作,并且由于 3D 引擎对速度非常敏感,因此如何这是一个很好的方法吗? 当计算机
我知道cwd代表“当前工作目录”,但是我不明白为什么它必须包含在gruntfile.js中。 脚本不会始终在当前工作目录中运行吗?为什么需要更改或指定另一个? 最佳答案 grunt.js驻留在我们项目
这个问题已经有答案了: 已关闭11 年前。 Possible Duplicate: Understanding Compile- vs Run-time Dependencies 我知道“运行时”范围
当我尝试在网页中显示它时,Google map 显示消息“仅用于开发目的”: 我怎样才能让这条消息消失? 我的代码是这样的: function initialize() { var
我在文档中找到了该函数: gtk_entry_set_input_purpose()设置 gtkentry 的输入法,但是当使用它时,gcc无法识别它,它给了我这个错误 implicit declar
所以我开始学习如何开发 Android 应用程序。我在学校有过 Java 和 C# 的经验,我想说虽然我不是专业人士,但我肯定对面向对象编程有相当好的把握。 所以我对 Android 不了解的一件事是
我对 Rails 和 Jquery 有疑问。我正在使用 AJAX 向文章添加评论而无需重新加载它们。以下代码自动包含在我的 views/application.html 中:
我知道这听起来可能很简单,但请耐心听我说。我对窗口对象的低级功能和意图很好奇。 JavaScript 窗口对象的用途是什么?它的核心功能是什么?我知道一切都存储在浏览器的窗口中。 SpiderMonk
首先,我想承认这个问题与this other one 非常相似。 ,但我想问得更具体,并希望获得更高质量的答案。 最近我学习了一个教程,其中使用 Director 实现了 Builder 模式。为了演
我的问题听起来有点奇怪:我知道用于加密的散列函数必须具有能够极大地改变输出的特性,即使是由于某种雪崩效应导致的一位微小变化也是如此。 低效 散列是否存在具有对相似 字符串产生相似输出的特征? 如果答案
Hi 在审查一些 Objective-C 代码时发现了以下语句: OBJC_EXTERN void CLSLog(NSString *format, ...) NS_FORMAT_FUNCTION(1
This article声称每个寄存器都有一个预期的目的,更重要的是, When the engineers at Intel designed the original 8086 processor
捕获与将参数传递给 lambda 表达式有何不同?我什么时候会使用捕获而不是只传递一些变量? 供引用:http://en.cppreference.com/w/cpp/language/lambda#
我试图了解寄存器必须具备什么标准才能被称为“通用寄存器”。 我认为通用寄存器是一个可以用于任何用途的寄存器(用于计算、将数据移入/移出等),并且是一个没有特殊用途的寄存器。 现在我了解到ESP寄存器是
关于 AMD(异步模块定义),我读到这样的阶段: The AMD format comes from wanting a module format that was better than toda
我的要求是,如果最后一个变量值小于1,例如0.0045 然后我需要打印小数点后的 4 位数字,以便结果看起来像 0.0045 或者如果最后一个变量值大于 1,例如 444.8183 然后我只需要打印小
我错过了 pandas DatatimeIndex 对象中“freq”属性的要点。它可以在构造时传递或随时设置为属性,但当此属性更改时,我没有看到 DatatimeIndex 对象的行为有任何差异。
根据Django REST框架docs ,路过default=CreateOnlyDefault()到序列化器字段 can be used to only set a default argument
我正在尝试使用 jQuery SimpleModal插件,我很好奇:描述页面提到了一个“容器”div。这样做的目的是什么?我需要用它来使用插件吗? 最佳答案 容器就是存放你想要出现在模态窗口中的内容的
我对 yield 方法的需求和用法有点困惑。首先,如果我们有两个不同优先级的线程处于可运行状态,JVM 是否给予两个线程均等的机会以循环方式执行。或者高优先级的线程将获得优先权?编辑:- 假设操作系统
我是一名优秀的程序员,十分优秀!