gpt4 book ai didi

java - 有没有一种有效的方法可以在没有注释的情况下分发 bean?

转载 作者:行者123 更新时间:2023-11-29 04:58:55 24 4
gpt4 key购买 nike

我有一些用 JPA 注释的 bean 来处理持久性映射。

这是一个例子:

import javax.persistence.Id;

public class User{
@Id
private String id;

public String getId(){
return id;
}

public void setId(String id){
this.id = id;
}
}

现在我想在不需要依赖 javax.persistence 的另一个项目中使用这个类,所以我不想只为这些类包含它。

所以我考虑将这个 bean 分成两个类:一个只有字段和访问器,一个子类在访问器上带有 JPA 注释。喜欢:

public class User{
private String id;

public String getId(){
return id;
}

public void setId(String id){
this.id = id;
}
}

import javax.persistence.Id;

public class UserEntity extends User{

@Override
@Id
public String getId(){
return super.getId();
}
}

不幸的是seems在大多数情况下,将 JPA 注释放在访问器上是一种不鼓励的做法,我支持这一点。

你能推荐任何更清洁的解决方案吗?

最佳答案

如果您绝对必须为 JPA 使用基于注释的映射,这可能没有帮助,但如果您愿意接受它,您可以使用 xml 配置映射,而不是在用于共享的 jar 中包含 xml 映射文件User 类与其他项目。

看这里的例子:

Persisting Entity Classes using XML in JPA

关于java - 有没有一种有效的方法可以在没有注释的情况下分发 bean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32764124/

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