在我看来,应该自动生成的代码一般/首选不能手动更改,因为我们不能再生任何东西。但一位经验丰富的休眠用户告诉我,他会一直更改hbm2java生成的代码以适应他的需求。 “适合需要”也很重要,所以我不确定这个主要的好处是什么。应该改变hibernate生成的代码以适应需求吗?
1
A
回答
3
应该自动生成的代码一般/首选不可用手改变?
- >不应该手工更改代码,因为如果您手动更改代码并且下次再次自动生成pojo类时。您可能需要做很多更改,并且难以保持手动更改。如果你错过了重大的改变,那么再次成为人类犯错误,那对你来说真的会非常困难。
但是一位经验丰富的hibernate用户告诉我,他会一直更改hbm2java生成的代码以适应他的需求。
- >您可以更改代码生成(复仇)脚本根据您的需要生成类,而不是在生成的代码中进行手动更改。
1
我在这种情况下使用aspectJ,因为我也不喜欢改变生成的代码。它也有帮助,因为你无法通过再生代码破坏的东西...(记:它不会是你总是触发生成)
0
您最好通过Reveng-Templates间接更改代码!
- 如果您重新生成源,您的自定义将丢失。
要更改模板提取的Hibernate工具来源pojo
-folder你喜欢我下面的示例src/main/templates/pojo/Pojo.ftl
的文件夹。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>hibernate3-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<components>
<component>
<name>hbm2java</name>
<outputDirectory>src/main/java</outputDirectory>
</component>
</components>
<componentProperties>
<!-- to change the filename of the entitys to *Impl.java for examle -->
<reversestrategy>mypackage.MyStrategy</reversestrategy>
<revengfile>/src/main/config/hibernate.reveng.xml</revengfile>
<configurationfile>/src/main/config/hibernate.cfg.xml</configurationfile>
<!-- modify the templates to your needs -->
<templatepath>src/main/templates</templatepath>
</componentProperties>
</configuration>
</plugin>
非常欢迎改变模板(即使它们很难阅读)!通常不可或缺地结合长时间的会话。
相关问题
- 1. C# - 我可以/应该简化/改变这段代码吗?
- 2. 什么是字段我应该改变我的代码,以适应我自己的代码?
- 3. 我应该忽略WPF生成代码的InterfaceMethodsShouldBeCallableByChildTypes吗?
- 4. 我应该单元测试生成的Java代码吗?
- 5. 适应旧的反应原生代码
- 6. 生成该代码
- 7. 我应该生成HTML表单吗?
- 8. 我应该生成异常消息吗?
- 9. PHP框架应该生成JavaScript吗?
- 10. 我们应该删除Facebook应用程序生成的请求吗?
- 11. 我应该在生产代码中使用Google的JSAPI吗?
- 12. 应该/可以生成一个类的数据库模式吗?
- 13. 可以用javacc生成java代码吗?
- 14. ORDER BY应该改变结果集吗?
- 15. 令牌应该每次都改变吗?
- 16. 改变后我应该重绘GUI吗?
- 17. 我应该改变绘画顺序吗?
- 18. Resources.Designer.cs应该受源代码控制吗?
- 19. 我应该重构这段代码吗?
- 20. 代码生效时它不应该是
- 21. Xcode4断点适应代码更改?
- 22. 改进代码以生成分布
- 23. Spring + Hibernate最适合网页应用吗?
- 24. 修改生成的代码
- 25. Django迁移应该在源代码控制中生存吗?
- 26. Hibernate工具可以生成JPA POJO吗?
- 27. 我们应该跟踪代码以外的其他事情吗?
- 28. 的Web应用程序代码生成
- 29. Python变量不应该改变,但它改变了吗?
- 30. 修改代码以适应Android Studio中的不同配置
如何用revenge.xml解决这个问题? http://www.mkyong.com/hibernate/hibernate-error-collection-has-neither-generic-type-or-onetomany-targetentity/ – user447586