-
准备工作:
-
从Spring官网下载STS(如果没有STS)。
-
体验步骤:
-
创建Spring Roo基础项目
-
生成持久层
根 据ROO的提示输入jpa setup再按ctrl+space,很遗憾这个快捷键已经被输入法切换占用,不能借助提示输入命令,但我们可以打开ROO命令向导,这里我们输入jpa 可以查到这条命令的用法,根据提示增加provider和database选项来完成命令。
1jpa setup --provider HIBERNATE --database H2_IN_MEMORY
命令执行后我们可以看到新增加或更新以下内容:
1)增加database.properties文件
2)增加persistence.xml文件
3)更新applicationContext.xml问价
4)更新Maven依赖
接 着再次输入hint,ROO会提示我们创建实体,我们再次打开命令向导,敲入entity,向导提示class参数是必须的,这里我们输入Card作为我 们要创建的Class,然后按Finish,ROO就会自动帮我们在顶层包下生成Card实体类,同时还会生成AspectJ的相关类,这些类主要给 ROO使用,可以先不必理会。
我们假设一张卡有卡号,客户号和余额三个属性,目前Card类没有任何属性,显然不能 满足我们的需求,再次输入hint命令,ROO提示使用field命令给实体增加属性,我们依赖使用命令向导来添加这三个属性,值得注意的是可选项,有些 验证的可选项我们可以直接使用。糟糕,field命令执行不成功,原来comment的值需要加双引号.field命令很强大,如果表有关联,我们可以使 用field reference命令向导来完成。
接 着使用repository jpa命令向导来创建一个实现CRUD操作的简单Repository,这个命令很神奇,ROO会自动使用AspectJ和Spring Data来完成基本的CRUD操作实现,而CardRepository类只是加简单的注解@RooJpaRepository(domainType = Card.class),不再需要任何实现,虽然简单方便,但也可以看出项目已经跟ROO绑定。
至此我们完成了一个简单的持久层,使用命令向导还是挺方便的。
-
生成服务层
再 次使用hint命令,ROO可以增加更多实体或者field,或者创建Web MVC Controller等,但没有服务层相关提示,我们可以使用命令向导,输入service,选择service type来创建服务接口CardService和实现类CardServiceImpl,命令执行后ROO也会自动生成相关的AspectJ类来维护 Repositoryde的CRUD调用,所以我们只需要再增加其它特殊操作就可以了。
-
生成展示层
使用刚 才ROO提示的“web mvc setup”命令来初始化Web MVC,该命令会增加Spring MVC的支持,以及实体的操作页面、国际化、主题等支持。当然该命令要结合Controller的创建命令使用,打开命令向导,输入"web",选 择"web mvc all"命令来为所有实体生成Controller。至此一个基本的MVC应用已经成形,可以马上“Run on server”试试效果。
太棒了,基本的CRUD都支持了。
-
生成安全支持
在从命令向导输入"security",选择"security setup",然后点击Finish,该命令将为我们生成一个登陆页面和基本的验证信息,太神奇了,赶快也试试吧!
-
小结:
第 一次使用还是蛮顺手,非常适合创建简单测试项目,ROO脚本可以保存成文件,这样下次直接执行就可以自动创建一个同样的项目了,另外ROO还提供了很多插 件可以帮忙简化更多开发工作,有待进一步探索,还有一点就是项目维护问题,既然代码都是自动生成的,免不了重构,不知道重构支持如何,继续考察。
相关推荐
Spring Roo是一个轻量级的Java开发工具,用于快速搭建Spring应用。它采用了一种新的方式来开发Spring应用程序,即通过命令行而非传统的集成开发环境(IDE)。Spring Roo提供了一系列命令,使得开发者可以轻松地创建...
- **IDE 集成**:将 Spring Roo 与 IDE 结合使用以提升开发体验。 - **创建 Web 层**:为应用添加前端交互能力。 - **部署与安全**:介绍如何部署应用并实现基本的安全措施。 #### 六、应用架构概述 - **整体...
**Spring Roo 简介,第 4 部分: 用 Spring Roo 和 Cloud Foundry 在云中快速开发应用程序** 在本篇文章中,我们将深入探讨 Spring Roo 的使用,以及如何结合 Cloud Foundry 进行云端应用开发。Spring Roo 是一个...
Spring Roo是一个用于快速开发Java应用程序的框架,它结合了Spring生态系统的强大功能,尤其是对Spring MVC、Spring Security、Spring Tiles、Spring Web Flow以及Spring测试支持等方面。 Spring Roo利用了一种...
**Spring ROO详解** Spring ROO是Spring框架下的一个快速开发工具,旨在简化Java应用程序的构建过程,尤其针对企业级应用。它通过自动化任务、代码生成以及最佳实践的应用,极大地提高了开发效率。Spring ROO的核心...
6. **IDE集成**:Spring Roo可以与Eclipse、IntelliJ IDEA等流行IDE无缝集成,提供便捷的代码补全和提示功能,提升开发体验。 7. **扩展性**:Spring Roo允许用户自定义命令和组件,扩展其功能,以满足特定项目需求...
**Spring Roo命令文档** Spring Roo是Spring框架的一部分,它提供了一种快速开发工具,帮助开发者在Java应用中创建和管理代码。Roo通过自动化过程,简化了常见的开发任务,如设置项目结构、创建实体类、生成数据库...
SpringRoo 2.0 进行了一系列用户体验上的改进,这些改进主要集中在简化命令行界面(CLI)的操作流程、提高命令执行的效率以及优化错误消息等方面。这些改变使得开发者能够更加专注于业务逻辑的开发,而不是被工具本身...
这个"spring-roo-2.0.0.RC1.zip"压缩包包含的是Spring Roo的2.0.0 Release Candidate 1版本,这是一个预发布版本,意味着它是对正式版本的接近最终测试,开发者可以提前体验新功能并提供反馈。 Spring Roo的核心...
Spring Roo是Spring框架家族中的一个开发工具,它旨在加速Java应用程序的开发过程,特别是通过提供命令行接口和集成开发...使用时,只需解压并根据官方文档或教程进行配置,就可以享受到Spring Roo带来的高效开发体验。
Spring Roo是Spring框架家族中的一个工具,用于加速Java开发,特别是企业级应用的构建。它通过命令行界面或集成开发环境(IDE)插件提供了一种快速开发的方式,可以帮助开发者生成代码、设置依赖和配置,使得开发...
10. **IDE集成**:Spring Roo可与Eclipse、IntelliJ IDEA等主流IDE无缝集成,提供丰富的代码提示和上下文感知,提升开发体验。 总结来说,Spring Roo 1.3.2是Spring框架下的一款强大的开发工具,旨在通过自动化和...
SpringRoo是一个基于Java的开发工具,旨在加速Spring框架的应用程序开发。它通过自动化许多常见的配置和代码生成任务,使得开发者能够更专注于业务逻辑,而不是基础架构。在本"SpringRoo快速学习"资料中,我们将深入...
这种“即装即用”的体验,让初学者也能迅速体验到Roo带来的效率提升。 #### 1.4 教程与实践:从零开始的项目构建之旅 Spring Roo提供的不仅仅是自动化工具,还包括了一整套详尽的教程,指导开发者从项目创建、实体...
通过这个压缩包,开发者可以体验Spring Roo的特性,如自动代码生成、交互式命令行界面和对各种技术(如JPA、JSF、Hibernate等)的集成支持。Spring Roo的目标是提高开发效率,减少样板代码,并促进良好的编程实践。...
### SpringRoo-ReferenceDocumentation 1.2.5.RELEASE 关键知识点解析 #### 一、SpringRoo简介 **1.1 SpringRoo是什么?** SpringRoo是一款旨在提高开发效率的工具,它能够帮助开发者快速搭建基于Spring框架的...
【os-springroo2-sample_code】项目是一个关于Spring Roo的示例代码库,它展示了如何使用Spring Roo框架来快速开发应用程序。Spring Roo是Spring框架的一部分,它提供了一种简化和加速Java应用开发的方式,通过自动...
Vaadin和Spring Roo是两个强大的Java开发框架,它们在创建高效、用户友好的Web应用程序方面发挥着重要作用。这个"vaadin-springRoo可运行的例子"是一个整合了这两个框架的实际项目,提供了完整的war包和源代码,使得...
### Spring Roo 简介 #### 一、Spring Roo 概览 Spring Roo 是一款针对 Java 技术的轻量级生产力工具,旨在快速便捷地开发基于 Spring 的应用程序。使用 Spring Roo 创建的应用程序遵循 Spring 最佳实践,并且基于...