`

Spring Roo Database Reverse Engineer with Oracle

 
阅读更多

So you are trying to reverse engineer an Oracle database with roo?

Unfortunately, due to licensing restrictions with the Oracle JDBC Drivers, this is a little difficult. There are a few blog posts and forum threads that address the problem but I figured I would post what worked for me here.

First, you need to download the appropriate Oracle Drivers from Oracle. The required login, stringent password requirements, nosy registration form, and general system instability made this a pretty painful step for me. I’d also like to say that companies that have password requirements that don’t allow symbols (or any other non-standard requirement) have a special place in my heart. Having to recover my password every time I go to your site virtually guarantees I will only go there when I absolutely have to (not often). Anyways, once you have it downloaded you need to install is with maven:

1 mvn install:install-file -Dfile=~/Downloads/ojdbc6.jar -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -DgeneratePom=true

Here comes the fun part. You need to create an osgi wrapper for the driver to install it in roo. Otherwise, roo cannot see the driver. Create a new folder and put the contents of the oracle roo addon pom gist I created. Now build it with maven. You may want to change some of the artifact ids and dependencies for your particular situation.

1 mvn package

No open a roo shell and execute the following command:

1 osgi install --url file:///Users/me/my-osgi-project/target/the-jar-it-built.jar

Now run (in roo):

1 jpa setup --provider HIBERNATE --database ORACLE
2 dependency remove --groupId com.oracle --artifactId ojdbc14 --version 10.2.0.2
3 dependency add --groupId com.oracle --artifactId ojdbc6 --version 11.2.0.3
4 database properties set --key database.driverClassName --value oracle.jdbc.OracleDriver
5 database properties set --key database.url --value jdbc:oracle:thin:@%YOUR_CONNECTION_INFO%
6 database properties set --key database.username --value %YOUR_USERNAME%
7 database properties set --key database.password --value %YOUR_PASSWORD%
8 database reverse engineer --schema %YOUR_SCHEMA% --package ~.domain

If you have any package loading exceptions when running the reverse engineer command you can uninstall the osgi bundle, set the package to optional in the osgi pom in the IncludedPackages tag (javax.some.package.*;resolution:=optional) rebuild, then reinstall in roo.

分享到:
评论

相关推荐

    Spring Roo In Action

    Spring Roo是一个轻量级的Java开发工具,用于快速搭建Spring应用。它采用了一种新的方式来开发Spring应用程序,即通过命令行而非传统的集成开发环境(IDE)。Spring Roo提供了一系列命令,使得开发者可以轻松地创建...

    spring roo使用文档

    ### Spring Roo 使用文档知识点概述 #### 一、Spring Roo 简介 - **Spring Roo** 是一个基于命令行的工具,旨在简化 Spring 应用程序的开发过程。 - **功能定位**:它通过提供一系列预定义的命令来加速应用程序的...

    Spring Roo 简介,第 4 部分: 用 Spring Roo 和 Cloud Foundry 在云中快速开发应用程序

    **Spring Roo 简介,第 4 部分: 用 Spring Roo 和 Cloud Foundry 在云中快速开发应用程序** 在本篇文章中,我们将深入探讨 Spring Roo 的使用,以及如何结合 Cloud Foundry 进行云端应用开发。Spring Roo 是一个...

    spring roo in action

    Spring Roo是一个用于快速开发Java应用程序的框架,它结合了Spring生态系统的强大功能,尤其是对Spring MVC、Spring Security、Spring Tiles、Spring Web Flow以及Spring测试支持等方面。 Spring Roo利用了一种...

    Spring ROO

    除此之外,Spring ROO能够与多种数据库如MySQL、Oracle、H2等无缝集成,提供数据库脚本生成和数据源配置。 在【压缩包子文件的文件名称列表】中,我们看到的是"spring-roo-1.2.5.RELEASE",这是Spring ROO的一个...

    Spring Roo命令文档

    **Spring Roo命令文档** Spring Roo是Spring框架的一部分,它提供了一种快速开发工具,帮助开发者在Java应用中创建和管理代码。Roo通过自动化过程,简化了常见的开发任务,如设置项目结构、创建实体类、生成数据库...

    spring roo 1.1.3 学习资料

    3. **数据库支持**:Spring Roo支持多种主流数据库,包括MySQL、Oracle、PostgreSQL等,可以通过简单的命令行操作进行数据库建模,生成相应的数据访问对象(DAO)和实体类。 4. **技术栈整合**:Roo与Spring MVC、...

    spring roo 生成数据库表

    首先,Spring Roo支持多种数据库,包括MySQL、Oracle、PostgreSQL等。在开始之前,你需要确保已经安装了JDBC驱动,这样Roo才能与选定的数据库进行通信。接下来,你可以通过Roo的命令行工具来定义数据库表结构。例如...

    SpringRoo 官方文档-版本 2.0.0.RC1

    ### SpringRoo官方文档知识点概览 #### 一、概述 SpringRoo 是一款由 Pivotal Software(现为 VMware 的一部分)开发的快速应用开发工具。它旨在帮助开发者简化基于Spring框架的应用程序构建过程。SpringRoo 通过...

    spring-roo-1.3.2.zip

    5. **数据库集成**:Spring Roo可以与多种数据库系统配合使用,如MySQL、Oracle、HSQLDB等。它能够自动创建数据库模式,生成JPA实体,并为CRUD操作提供基础支持。 6. **Web应用模板**:Spring Roo提供了一些预定义...

    spring-roo-1.1.5.RELEAS

    2. **数据库集成**:Spring Roo支持多种数据库,如MySQL、Oracle等,可以自动生成数据访问对象(DAO)和JPA实体。 3. **技术栈集成**:Roo与Spring MVC、Spring Security、Spring Data等Spring组件紧密集成,简化了...

    springroo快速学习

    SpringRoo是一个基于Java的开发工具,旨在加速Spring框架的应用程序开发。它通过自动化许多常见的配置和代码生成任务,使得开发者能够更专注于业务逻辑,而不是基础架构。在本"SpringRoo快速学习"资料中,我们将深入...

    spring-roo-2.0.0.RC1.zip

    Spring Roo是Spring框架家族中的一个开源工具,旨在简化Java应用程序的开发过程,特别是Spring MVC和Spring Data应用。这个"spring-roo-2.0.0.RC1.zip"压缩包包含的是Spring Roo的2.0.0 Release Candidate 1版本,这...

    Spring Roo - Reference Documentation

    ### Spring Roo - 高效开发框架的深度解析 #### 引言:Spring Roo与生产力的飞跃 Spring Roo作为Spring框架的扩展,旨在显著提升开发者在构建企业级Java应用时的效率。它通过自动化代码生成、简化项目搭建以及提供...

    spring-roo-1.1.0.M1.zip_54587.m1_M1 ssh_Spring Roo download_spri

    Spring Roo是Spring Framework的一个附加工具,它为Java开发者提供了一个快速开发平台,旨在简化和加速应用程序的构建过程。"spring-roo-1.1.0.M1.zip_54587.m1_M1 ssh_Spring Roo download_spri"这个标题暗示了这是...

    os-springroo2-sample_code

    【os-springroo2-sample_code】项目是一个关于Spring Roo的示例代码库,它展示了如何使用Spring Roo框架来快速开发应用程序。Spring Roo是Spring框架的一部分,它提供了一种简化和加速Java应用开发的方式,通过自动...

    spring-roo-docs

    ### SpringRoo-ReferenceDocumentation 1.2.5.RELEASE 关键知识点解析 #### 一、SpringRoo简介 **1.1 SpringRoo是什么?** SpringRoo是一款旨在提高开发效率的工具,它能够帮助开发者快速搭建基于Spring框架的...

    Spring Roo 简介

    ### Spring Roo 简介 #### 一、Spring Roo 概览 Spring Roo 是一款针对 Java 技术的轻量级生产力工具,旨在快速便捷地开发基于 Spring 的应用程序。使用 Spring Roo 创建的应用程序遵循 Spring 最佳实践,并且基于...

    vaadin-springRoo可运行的例子

    Vaadin和Spring Roo是两个强大的Java开发框架,它们在创建高效、用户友好的Web应用程序方面发挥着重要作用。这个"vaadin-springRoo可运行的例子"是一个整合了这两个框架的实际项目,提供了完整的war包和源代码,使得...

Global site tag (gtag.js) - Google Analytics