gpt4 book ai didi

java - Hibernate:实体类名作为标识符

转载 作者:行者123 更新时间:2023-11-30 08:28:38 24 4
gpt4 key购买 nike

我想让我的实体成为单例。该单例应该可以从其他实体访问。

所以我决定多次设置它的 id,比如:

@Entity
@Table(name = "tableName")
public class SingletonEntity {

@Id
private int id = this.getClass().getSimpleName(); //IS IT POSSIBLE? HOW?

//.......
}

问题:

如何实现? 请。举个例子。

编辑:

值得一提的是,我的 SingletonEntity 只有最终字符串状态。所以我可以说它是无状态的。实际上,我不想要单例,我只想为该实体设置最终 ID,并且我希望该 ID 应该等于 SingletonEntity.class.getSimpleName()

对于@Balaji Reddy:

我试过:

@Entity
@Table(name = "Client")
public class Client implements Serializable {

@Id
@Column(name = "id")
private static final String id = Client.class.getSimpleName();

.................
}

并得到:

No identifier specified for entity: db.Client

在字符串中

ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");

最佳答案

您尝试过使用常量吗?

private static final String CLASS_NAME = SingletonEntity.class.getSimpleName();

@Id
private String id = CLASS_NAME;

这是实体字段的初始化,您也可以在构造函数中执行此操作。

private SingletonEntity() {
this.id = this.getClass.getSimpleName();
}

关于java - Hibernate:实体类名作为标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20091795/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com