使用 Java 为对象提供具有部分列的 JPA 实体
我有一个类似 Ledger 的表,它记录了没有唯一值的所有信息。
名称 | 日期 | 语句 |
---|---|---|
第一 | 行 | 随机数据 |
第二 | 行 | 随机数据 |
我正在尝试创建一个仅获取名称和语句的实体
@Entity
public class MyTable {
private String name;
private String statement;
}
因为我没有指定@Id我收到异常并且我们在表中没有任何唯一标识符我可以不提@Id注解。
另外,如果我们需要编写任何用户定义的方法来获取这些值,请建议如何执行此操作。任何来源或示例都会有很大帮助。
I have a table which is of kind Ledger which records all information with no unique values.
Name | Date | Statement |
---|---|---|
First | row | random data |
Second | row | random data |
I am trying to create an Entity which will only fetch name and statement
@Entity
public class MyTable {
private String name;
private String statement;
}
As I am not specifing @Id I am getting exception and We don't have any unique identifier in the table I can't mention @Id annotation.
Also, If we need to write any user defined method for getting these values please suggest how to do that as well.Any sources or samples will greatly help here.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
由于您没有任何唯一标识符,因此需要首先定义它。
您可以通过两种方式完成此操作:
重新设计表并标识任何唯一的列或
声明一个 Long 值作为唯一标识符,如下所示[适用于 mysql,对于 pg,您需要定义自动生成
id
的序列] :@Id
@GenerateValue(策略 = GenerationType.IDENTITY)
私有长ID;
此外,要获取值,请不要忘记为这些字段添加
getters
setters
方法。As you don't have any unique identifier, you need to define that first.
You can do it in two ways:
Redesign the table and identify any column which is unique Or
Declare a Long value as a unique identifier like this[works for mysql, for pg, you need to define a sequence for auto
id
generation]:@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
Moreover, to get values, don't forget to add
getters
setters
method for these fields.