spring roo
在Keyhole工作期间,我参与了许多项目,其中客户要求我们重写旧系统,同时保留其现有数据库。 有时,它有助于快速演示如何使用当前技术来简化开发,测试和维护其代码。
我发现可以创建一个快速示例(与当前项目相关)的一种方法是使用Spring Roo 。 从现有数据库架构对数据模型进行逆向工程的能力无疑非常有用。
当客户端使用Oracle数据库时,请按照以下步骤操作:
1 。 尽管仅通过命令提示符即可访问Spring Roo,但使用IDE更加容易,而用于此任务的最简单的工具是Spring自己的基于Eclipse的IDE,即Spring Tool Suite(STS)。 您可以从http://spring.io/tools下载最新版本。
2 。 下载并设置STS后,按Ctrl-N可以打开“新建”向导(或者您可以选择“文件”->“新建”->“其他...”)。 在过滤器中输入“ roo”,然后选择“ Spring Roo Project”。 点击下一步”。
3 。 现在,只需在前两个字段中填写适当的项目和程序包名称即可。 默认值将适用于其余字段。 再次单击“下一步”,然后单击“完成”以创建新项目。
4 。 应该发生的是,您的项目将带有一个标记为“ Roo Shell”的视图。 通常,尝试打开该视图时会挂起。 因此,我关闭了该视图,然后右键单击您的新项目,然后选择“ Spring Tools –> Open Roo Shell”。 这次应该很快出现,看起来像这样。
5 。 现在,我们让Roo做好自己的工作,并带领我们迈向一个完整的项目。 继续,在Roo命令行上输入“提示”。 它告诉我们我们需要设置一个持久性配置,因此让我们遵循它给我们的建议。
6 。 对于此特定示例,我使用带有EclipseLink的Oracle数据库作为持久性提供程序,但是有很多选项,当您在Roo命令提示符下按Ctrl-Space时,Roo会向您显示这些选项。
7 。 您会看到,由于不公开提供该驱动程序,Oracle使我们有些困难。 您可以在技术顾问Kerry Wilson的博客文章( 网址为http://www.goodercode.com/wp/spring-roo-database)中了解如何创建由OSO封装的Oracle驱动程序,该版本可以由Roo安装和使用。 -reverse-engineer-with-oracle / 。
8 。 最后,我们已经准备好了。 在Roo命令提示符中输入命令“数据库反向工程–package〜.domain –schema PUBLIC”,其中“ domain”是要在其中创建模型的包名称,“ PUBLIC”是要反向的架构的名称工程师。
9 。 Roo会做一些工作,完成后,您将拥有POJO,这些POJO表示数据库表,并带有用于字段和关系的JPA批注。 如果数据库不仅仅是一个非常简单的模型,那么Roo很可能出了点问题。 但是,您确实节省了为架构中的每个表创建实体的时间,因此您可以花费一些时间来解决Roo的错误。
最后说明
虽然我仅讨论了如何使用Roo将数据库模式映射到Java实体模型,但是Roo对于为多种Web技术设置初始配置也很有用。 它可以创建单元测试,添加日志记录,并与GWT , JSF , JMS , Solr , Spring MVC等集成。 最好的部分是,可以删除所有Roo注释,而剩下的纯Java代码则可以作为新项目的基础,尤其是在整个项目中不使用Roo的情况下。
翻译自: https://www.javacodegeeks.com/2014/01/proof-of-concept-using-spring-roo.html
spring roo