Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jpa:在哪里放置toString()自定义方法?_Java_Orm_Jpa_Netbeans_Object Model - Fatal编程技术网

Java Jpa:在哪里放置toString()自定义方法?

Java Jpa:在哪里放置toString()自定义方法?,java,orm,jpa,netbeans,object-model,Java,Orm,Jpa,Netbeans,Object Model,我已经使用Netbeans从db开始自动创建jpa实体。 现在我需要在这些实体中插入一些逻辑代码。 例如,首先我需要为每个 jpa实体类。 问题是我必须把代码放在哪里?我知道jpa课程可能是 当我在下一次数据库模式更新后再次启动jpa“向导”时,被Netbeans覆盖。 所以我想在不放弃jpa自动生成的情况下编写一些实体逻辑 Netbeans的特性。 我是否需要使用外部工具,如合并工具、预处理器 我需要实现一些继承类或特定模式吗? 在过去,我使用过Apache Cayenne。对于每个db实体,

我已经使用Netbeans从db开始自动创建jpa实体。 现在我需要在这些实体中插入一些逻辑代码。 例如,首先我需要为每个 jpa实体类。 问题是我必须把代码放在哪里?我知道jpa课程可能是 当我在下一次数据库模式更新后再次启动jpa“向导”时,被Netbeans覆盖。 所以我想在不放弃jpa自动生成的情况下编写一些实体逻辑 Netbeans的特性。 我是否需要使用外部工具,如合并工具、预处理器 我需要实现一些继承类或特定模式吗? 在过去,我使用过Apache Cayenne。对于每个db实体,它创建两个java 上课。第一个(父级),带有字段实体映射,第二个 (一个空的子类)作为逻辑的容器,它永远不会被覆盖 (也没有再生)

如有任何建议,将不胜感激


来自意大利的问候

从模式生成实体bean的另一种方法是允许JPA从实体bean创建模式。我发现它使DB模式的更新和维护更加容易。

我建议您将其作为源代码管理问题来解决。生成类,然后根据需要修改它们。一旦您满意,请将结果检查到源代码管理中。当数据库架构更改时,重新生成类。它们将缺少您的修改,但这很好。现在,将代码的本地副本与源代码管理中的内容同步:您将看到两种传出更改:反映模式中更改的更改,以及删除修改(因为它们被盲目覆盖)。使用你的源代码管理工具扔掉后一种更改,保留前一种;本质上,您正在将新生成的版本与旧的修改版本合并,并保留您想要从这两个版本中获得的位


我不使用NetBeans,所以我无法详细描述如何做到这一点。在Eclipse中,这很简单:重新生成、选择全部、团队>同步,然后在需要的任何地方执行“从右向左复制当前更改”。

是的,我可以使用修订控制系统将自定义源代码与自动生成的代码同步。 但是在jpa实体类中编码业务逻辑正确吗?

请使用“添加注释”来回答问题。