gpt4 book ai didi

java - 从数据库为 JPA 实体生成自定义代码

转载 作者:搜寻专家 更新时间:2023-11-01 02:44:04 24 4
gpt4 key购买 nike

我在这里寻求一种简单的方法来在 Eclipse 从数据库生成的 JPA 实体中添加一些自定义代码。

基本上我想要实现的是添加包含实体属性名称的公共(public)字符串属性,并在我需要以字符串形式提供“属性名称”并确保不会出现运行时访问错误时使用它们。

类似这样的东西

@Entity
@Table(name="clients")
@NamedQuery(name="ClientModel.findAll", query="SELECT c FROM ClientModel c")
public class ClientModel implements Serializable {
private static final long serialVersionUID = 1L;

@Id
@Column(name="id_client")
private long idClient;

public String name;

public ClienteModel() {
}

public long getIdClient() {
return this.idClient;
}

public void setIdClient(long idClient) {
this.idClient = idClient;
}

public String getName() {
return this.name;
}

public void setName(String name) {
this.name = name;
}

//CUSTOM CODE
public static final String idClientProperty = "idClient";
public static final String nameProperty = "name";
}

所以我可以使用像这样的属性名

ClientModel.nameProperty

并且对于他的存在是编译时安全的,并且在进一步生成实体之后进行名称重构的情况下。

我知道 Telosys Tools & co. 的存在,但我希望可以有更简单/更快的东西(比如使用 JAXB 在 WSDL_to_entity 生成中作为插件提供的自定义类)

谢谢。

最佳答案

最后我使用了 Telosys 工具,即使我不想在我的项目中添加其他工具,有点容易设置,只需阅读此处 https://sites.google.com/site/telosystools/getting-started/21-configure-a-project

在我的具体情况下,我在创建 setter/getter 期间将此代码添加到模板“JPA_bean_with_links”

#if ( $field.getter )    public static String ${field.getter}Property() {
return "$field.name";
}
#end

关于java - 从数据库为 JPA 实体生成自定义代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26650948/

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