使用Spring Roo进行概念验证

在Keyhole期间,我参与了许多项目,其中客户要求我们重写旧系统,同时保留其现有数据库。 有时,它有助于快速演示如何使用当前技术来简化开发,测试和维护其代码。

我发现可以创建一个快速示例(与当前项目相关)的一种方法是使用Spring Roo 。 从现有的数据库模式对数据模型进行逆向工程的能力无疑非常有用。

当客户端使用Oracle数据库时,请按照以下步骤操作:

1 。 尽管仅通过命令提示符即可访问Spring Roo,但使用IDE更加容易,而用于此任务的最简单的工具是Spring自己的基于Eclipse的IDE,即Spring Tool Suite(STS)。 您可以从http://spring.io/tools下载最新版本。

lpd80Fx

2 。 下载并设置STS后,请按Ctrl-N以打开“新建”向导(或者您可以选择“文件”->“新建”->“其他...”)。 在过滤器中输入“ roo”,然后选择“ Spring Roo Project”。 点击下一步”。

VL

3 。 现在,只需在前两个字段中填写适当的项目和程序包名称即可。 默认值将适用于其余字段。 再次单击“下一步”,然后单击“完成”以创建新项目。

W3gQExP
cJ2FrVI

4 。 应该发生的是,您的项目将带有一个标记为“ Roo Shell”的视图。 通常,尝试打开该视图时会挂起。 因此,我关闭了该视图,然后右键单击您的新项目,然后选择“ Spring Tools –> Open Roo Shell”。 这次应该很快出现,看起来像这样。

3NC4DDQ

5 。 现在,我们让Roo做好自己的工作,并带领我们迈向一个完整的项目。 继续,在Roo命令行上输入“提示”。 它告诉我们我们需要设置一个持久性配置,因此让我们遵循它给我们的建议。

bAWh04h

6 。 对于此特定示例,我使用带有EclipseLink的Oracle数据库作为持久性提供程序,但是有许多选项,当您在Roo命令提示符下按Ctrl-Space时,Roo会向您显示这些选项。

BQcnS6P

7 。 您会看到,由于不公开提供该驱动程序,Oracle使我们有些困难。 您可以在技术顾问Kerry Wilson的博客文章( 网址为http://www.goodercode.com/wp/spring-roo-database)中了解如何创建由OSO封装的Oracle驱动程序,该版本可以由Roo安装和使用。 -reverse-engineer-with-oracle / 。

voLxxhh

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时,可以删除所有Roo批注,并且剩下纯Java代码,它们可以作为新项目的基础。

参考: Keyhole Software博客上来自JCG合作伙伴 Brice McIver的使用Spring Roo的概念验证 。

翻译自: https://www.javacodegeeks.com/2014/01/proof-of-concept-using-spring-roo.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/365208.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

z490 linux raid,华硕z490主板装win7系统及bios设置教程(支持10代usb驱动)

[文章导读]我们在组装电脑时,华硕主板可能是大家的首选,最近有网友问,我组装的华硕z490主板电脑怎么装win7系统呢,这里和大家说下,从华硕z490主板后默认是uefigpt引导模式,且官方没有出usb驱动,…

Ember Charts – 基于 Ember D3 的图表库

Ember Charts 是一个基于 Ember.js 和 D3.js 的图表库。它包括时间序列、柱状图、饼图、点图,很容易扩展和修改。这些图表组件代表图表交互性和演示的最佳实践,是高度可定制和可扩展的。您可以添加说明、标签、提示和鼠标悬停效果。 您可能感兴趣的相关文…

值得拥有!精心推荐几款超实用的 CSS 开发工具

当你开发一个网站或 Web 应用程序的时候,有合适的工具,绝对可以帮助您节省大量的时间。在这篇文章中,我为大家收集了超有用的 CSS 开发工具。 对于 Web 开发人员来说,找到有用的 CSS 开发工具,就像找到一个魔灯&#x…

matplotlib散点图笔记

定义: 由一组不连续的点完成的图形 散点图: 包含正相关性,负相关性和不相关性. 散点图生成函数: plt.scatter(x,y) 演示代码如下: import numpy as np import matplotlib.pyplot as plt open,closenp.loadtxt(‘000001.txt’,delimiter’,’,skiprows1,usecols(1,4),unpackTrue…

20款漂亮的长阴影 LOGO 设计作品【附免费生成工具】

长阴影(Long Shadow)概念来自于最新非常流行的扁平化设计(Flat Design)。扁平化设计趋势影响最大的是用户界面元素和图标,但它也开始蔓延到其他网页设计的其他部分。 长阴影其实就是扩展了对象的投影,感觉是…

c语言sqlist结构体,c语言里 sqlist

满意答案cielkong2018.08.12采纳率:43% 等级:9已帮助:463人c语言里 sqlist?//定义顺序表L的结构体typedef struct{Elemtype data[MaxSize];int length;}SqList;//建立顺序表void CreateList(SqList * &L,ElemTy…

汇编语言实验三

1. 练习1 第1步,编写汇编源程序t1.asm, 源程序代码如图1-1所示。 (1) 运行程序,观察程序输出结果是什么? 2) 将 line4和line9种寄存器dl 的值分别修改为 0~9 中任何一个数字,重新汇编→ 连接→运行,观察结果的变化。 …

Java事实让您大吃一惊! (信息图)

随着Java 8计划在未来几天内发布 ,我们正在寻找一些Java事实,这些事实将真正捕捉这种编程语言对世界的影响。 因此,我们决定创建一个简单的图表,描述有关Java历史的一些重要统计数据。 信息的主要来源是Oracle的Java时间轴 。 我…

15个创意示例教您如何自定义 404 错误页面

在这篇文章中,你会看到一组充满创意的404错误页面设计。我希望这个集合能够启发和帮助你设计自己的 404 错误页面。一个自定义的404错误页面将鼓励用户在您的网站上停留更长的时间。 404页面必须让访客容易理解,最好有有一些互动。你会看到下面的例子中一…

C语言反序输出英文句子,C++实现英文句子中的单词逆序输出的方法

本文实例讲述了C实现英文句子中的单词逆序输出的方法。分享给大家供大家参考,具体如下:#include "stdafx.h"#include #include #include using namespace std;int main(int arc,char** argv){string str"I come from liaoning.";sta…

input 输入值的监听 禁止输入特殊字符

1.input 输入值的监听 //用于监听input的值变化(input的值产生变化才会触发事件)(function ($) {$.fn.watch function (callback) {return this.each(function () {//缓存以前的值 $.data(this, originVal, $(this).val());//event $(this).on(keyu…

android 如何extends 多个,Android多线程:继承Thread类 使用解析(含实例教程)

前言在Android开发中,多线程的使用十分常见今天,我将全面解析多线程其中一种常见用法:继承Thread类。目录示意图1. 简介示意图2. 使用讲解2.1 使用步骤示意图2.2 具体使用// 步骤1:创建线程类 (继承自Thread类)class MyThread ext…

激发你的灵感:16个精美视差效果网页设计作品

对于视差滚动(Parallax Scrolling),关注网页设计的朋友都不会陌生。在网页设计中,视差滚动是一种很特别的网页设计技术,通过让多层背景以不同的速度或者不同的方向移动形成 3D 运动效果,有很强的视觉冲击力…

Eclipse的Mockito模板

有时候,我想念树林里的树木-那是一段令人不安的长时间。 我最近才再次意识到这一点,在无数次中键入了一个更详细的模拟表达式。 有问题的语句是doAnswer(Answer)构造,使用涉及到的静态导入和泛型的东西进行编码总是很麻烦。 尽管我定期使用E…

使用 Web Tracing Framework 分析富 JS 应用的性能

来自谷歌的 Web Tracing Framework 包含一组工具和脚本,用于 JavaScript 相关代码的性能分析。它是重 JavaScript 应用程序的理想选择,而 JavaScript 仅用于简单的交互的网页可能没有必要。有一个手动嵌入选项和一个 Chrome 扩展,用于获取内部…

php yii2 获取表里最大的id_Yii2中自带分页类实现分页

1.首先写控制器层先引用pagination类use yiidataPagination;写自己的方法:function actionFenye(){$data Field::find(); //Field为model层,在控制器刚开始use了field这个model,这儿可以直接写Field,开头大小写都可以,为了规范,我写的是大写$pages new Pagination([totalCou…

android 操作系统升级,关于手机操作系统升级的问题

最近身边的好几个朋友问我操作系统方面问题,操作系统就是负责对计算机硬件进行直接控制以及管理的系统软件,它包含的功能也是多方面的,一般包括处理器管理,储存,文件,设备以及作业管理等等。把操作系统的内…

【完成整理】45套很酷的长影影 LOGO 设计

长阴影其实就是扩展了对象的投影,感觉是一种光线照射下的影子,通常采用角度为 45 度的投影,给对象添加了一份立体感。长阴影(Long Shadow)概念来自于最新非常流行的扁平化设计(Flat Design)。扁…

android 坐标点计算器,Android实现简易计算器

开之前我还是想问问老师,为什么一定要星期天前交作业呢?由于条件限制,作品是赶出来的不是细细琢磨出来的。所以在这版apk中功能较为简易,有待后期再不断更新与优化总体效果图如下布局activity_main.xml部分代码功能代码MainActivi…

1的恢复出厂设置在哪里_罗斯蒙特变送器怎么恢复出厂设置?

罗斯蒙特变送器怎么恢复出厂设置?特殊情况下,罗斯蒙特变送器需要恢复出厂设置。罗斯蒙特变送器进行出厂设置的方法非常简单,只需要用手操器或AMS设备管理器就能操作。罗斯蒙特手操器里有一个恢复出厂调整值–传感器量程调整命令,使用此命令就…