- 浏览: 347902 次
- 性别:
- 来自: 福州
文章分类
最新评论
-
18215361994:
chrome扩展中可以获取开发者工具所有资源不?
Chrome 插件开发 -
lBovinl:
完全是一头雾水~o(︶︿︶)o 唉
乱七八糟的Ruby笔记 -
zhangyanan_it:
楼主总结的好多!想问下:map.resources :role ...
Rails随记 -
justin_chiang:
...
Propertiess资源文件的读取和简单的性能测试 -
lezi2012:
感谢分享!!!感谢分享!!!感谢分享!!!感谢分享!!!感谢 ...
Rails随记
比较新的东西,其实可以当作一个spring project的最佳实践进行学习,其中包含了许多内容,也让我感觉多了学习的乐趣.
内容摘自官方文档
类似代码生成器,应该说更高级一些,与Rails,Grails的命令台功能类似
1:下载Release版的压缩包,解压缩后在环境变量中设置对应的home与path
2:在cmd命令台中,运行roo执行操作
可以通过安装基于Eclipse的SpringSource Tool Suite's工具集,为roo开发提供便利
十分钟内创建Web应用
hint命令.提供了类似向导的工具,提供了step by step的方式,指导创建一个应用.也可以加入指定的类型参数,获取指定的帮助信息,如hint controllers
project命令,用于在当前目录创建一个roo project,
persistence命令,用于创建数据库相关文件,
persistence setup --provider HIBERNATE --database MSSQL //这里为选择的数据类型
然后根据提示修改对应的src/main/resources/database.properties,完成数据库的细节设置
entity命令,用于创建基础的POJO对象,
entity --class ~.Timer --testAutomatically //TImer为类名
field命令,用于为该Pojo对象添加属性
field string --fieldName message --notNull
controller命令,为pojo对象提供基于Spring MVC的功能,采用最新的RESTful风格
controller all --package ~.web //表示将会在当前目录下创建web子目录,存放controller文件
selenium test命令,用于为类创建对应的测试代码
selenium test --controller ~.web.TimerController
perform命令,用于执行不同的操作,如测试.打包,以及转换成能够使用IDE导入的方式,
通过执行perform,也可以自动下载所需的依赖jar包
roo> perform tests
roo> perform package
roo> perform eclipse
如果出现jar缺失,比如对应的sql数据库jdbc包,可以通过手动在pom.xml下加入依赖的方式,提供扩展
打包后,就可以直接将war包放入到tomcat中运行,其中注意访问的url与war包名字一致
Roo Samples Script 一些Roo目录下的脚本
应该使用用于将一系列的命令,保存在脚本中,然后通过命令进行批量执行这些命令
script --file filename.roo
clinic.roo: -- 包含了一个完整的宠物商店的例子
vote.roo: 包含了Spring Security的例子
RSVP: 详细的使用了除去Spring本身功能的,Spring roo中的其他设置选项,(其实也没有那么多东西)
安装数据库时,选择会根据JPA标准显示三个,比较常用的应该就是hibernate,比较传统的hibernate使用,生成的代码更偏向JPA标准模式
开发过程中,可以使用内置的内存数据库HYPERSONIC_IN_MEMORY,由maven提供插件支持
创建类时,可以通过~.根据工程的top package目录进行子目录的设置,而类名为最后的一个字符串(注意)
如entity --class ~.domain.Topping 设置类名为Topping
除了hint向导外,也提供了help命令,用于完整的command帮助
project 目录下的log.roo文件,将会记录所执行过的command
在生成Java代码时,roo应该是通过Java类与AspectJ类的方式,同时生成最终功能代码,使用AOP的方式编程
在创建pojo属性的同时,可以提供为其添加基于jsr303的 annotation的验证
在对class操作后,roo会自动跳转后续都为其进行操作,可以通过在操作时,设置不同的--class属性进行选择
如 class --class Base 就可以跳转到对应的Base类
建立实体类的一对多关系
field set --fieldName toppings --element ~.domain.Topping
为当前类添加一个属性toppings,表示拥有多个的Topping对象
主要为set的使用,以及后续的element属性
在roo project中,同样也可以使用maven进行测试,打包等操作
创建web层
controller命令的使用
controller all --package ~.web //创建所有entity的controller,并且放置在子web目录下,并且会自动生成所需的web.xml等配置文件,以及添加spring MVC和URL rewrite,Tiles
可以使用mavan的命令,直接对roo项目进行部署测试
'mvn tomcat:run, 或者 mvn jetty:run
为程序添加安全支持 spring Securing
security setup命令:进行安装,注意必须在创建Web layer后,才可以进行添加.
会添加对应的applicationContext-security.xml文件
在页面中,meun.jspx可以使用<sec:authorize ifAllGranted="ROLE_ADMIN"> 对菜单进行配置
在controller中,可以通过注解进行配置权限
@RooWebScaffold(path = "pizzaorder",
automaticallyMaintainView = true,
formBackingObject = PizzaOrder.class,
delete=false,
update=false)
用于配置roo移除该controller的删除和更新的方法
http://localhost:8080/pazzashop/login 用于提供用户登录
定义UI界面
一般情况下,如果对entity对象进行了修改,会自动印象对应的controller与jsp界面,可以通过@RooWebScaffold(automaticallyMaintainView=false)配置,用于取消自动关联
Selenium Tests Selenium测试
自动生成对应的脚本,使用如下命令执行测试
selenium test --controller ~.web.ToppingController
也可以通过执行mvn selenium:selenese,使用mvn进行测试,区别在于.会打开firefox查看测试结果
Backups and Deployment 备份与部署
backup命令,用于创建一个保存了当前项目代码,日志和脚本记录的备份zip文件
perform package命令,用于生成部署所需的war包
区别于原来的dao service controller层次架构,roo的项目中,只有entity(类似dao)以及web层,通过使用jpa的底层,解决了在云计算平台上扩展的问题
Critical Technologies
roo peoject 中的两个重要技术, AspectJ与Spring
roo项目中,会针对class生成对应的*_Roo_*.aj文件,一个或多个, 成为AspectJ ITD文件,由Roo进行自动管理
所生成的.java类中,代码一般都比较简单,不过都带有许多注解,其中roo开头的注解将不会被编译到class代码中
当你重写了java文件的toString方法后,会自动删除对应的entity_Roo_ToString.aj文件,如果要重新使用自动生成的toString方法,可以通过annotation进行配置
@RooToString(toStringMethod="generatedToString"),但是注意这里生成的新的toString方法名为
generatedToString
Entity Layer 类(Domain层)
可以通过jpa的annotation对其进行修改,比如对其添加非空验证,修改其映射的表名等
@RooJavaBean 用于提供pojo对象的get和set方法,如果手动编写了get和set方法,那将会自动跳过
@RooEntity 为entity提供对应的JPA操作类
Web Layer
使用spring mvc提供了web的基本脚手架,包含了REST风格的URL rewrite,Apache Tiles,Spring JavaScript.以及一键式的命令为其添加Spring Security
Usage and Conventions 用法与公约
Add-On 插件安装和删除
下载后放置在$ROO_HOME/add-ons目录下,使用addon cleanup command,还包括$ROO_HOME/work的使用..(文档有些纠结)
在spring roo的project中,将一个class进行了分解,如entity类,通过修改分离get/set
,toString,以及对应的Dao方法,分别放在不同的类中,这样便于代码的阅读,在编译后,生成对应的代码....这个需要研究一下
同理,在controller中,分解成两个类,一个包含了传统的controller方法,则另外一个可以用于扩展
Base Add-Ons
目前插件开发的文档并没有写出,可能还未开发,不过如果要学习,就必须先开始了目前Roo
project中所使用的框架
目前roo中集成了 Jms email,jpa,spring security,selenium.spring web flow
内容摘自官方文档
类似代码生成器,应该说更高级一些,与Rails,Grails的命令台功能类似
1:下载Release版的压缩包,解压缩后在环境变量中设置对应的home与path
2:在cmd命令台中,运行roo执行操作
可以通过安装基于Eclipse的SpringSource Tool Suite's工具集,为roo开发提供便利
十分钟内创建Web应用
hint命令.提供了类似向导的工具,提供了step by step的方式,指导创建一个应用.也可以加入指定的类型参数,获取指定的帮助信息,如hint controllers
project命令,用于在当前目录创建一个roo project,
persistence命令,用于创建数据库相关文件,
persistence setup --provider HIBERNATE --database MSSQL //这里为选择的数据类型
然后根据提示修改对应的src/main/resources/database.properties,完成数据库的细节设置
entity命令,用于创建基础的POJO对象,
entity --class ~.Timer --testAutomatically //TImer为类名
field命令,用于为该Pojo对象添加属性
field string --fieldName message --notNull
controller命令,为pojo对象提供基于Spring MVC的功能,采用最新的RESTful风格
controller all --package ~.web //表示将会在当前目录下创建web子目录,存放controller文件
selenium test命令,用于为类创建对应的测试代码
selenium test --controller ~.web.TimerController
perform命令,用于执行不同的操作,如测试.打包,以及转换成能够使用IDE导入的方式,
通过执行perform,也可以自动下载所需的依赖jar包
roo> perform tests
roo> perform package
roo> perform eclipse
如果出现jar缺失,比如对应的sql数据库jdbc包,可以通过手动在pom.xml下加入依赖的方式,提供扩展
打包后,就可以直接将war包放入到tomcat中运行,其中注意访问的url与war包名字一致
Roo Samples Script 一些Roo目录下的脚本
应该使用用于将一系列的命令,保存在脚本中,然后通过命令进行批量执行这些命令
script --file filename.roo
clinic.roo: -- 包含了一个完整的宠物商店的例子
vote.roo: 包含了Spring Security的例子
RSVP: 详细的使用了除去Spring本身功能的,Spring roo中的其他设置选项,(其实也没有那么多东西)
安装数据库时,选择会根据JPA标准显示三个,比较常用的应该就是hibernate,比较传统的hibernate使用,生成的代码更偏向JPA标准模式
开发过程中,可以使用内置的内存数据库HYPERSONIC_IN_MEMORY,由maven提供插件支持
创建类时,可以通过~.根据工程的top package目录进行子目录的设置,而类名为最后的一个字符串(注意)
如entity --class ~.domain.Topping 设置类名为Topping
除了hint向导外,也提供了help命令,用于完整的command帮助
project 目录下的log.roo文件,将会记录所执行过的command
在生成Java代码时,roo应该是通过Java类与AspectJ类的方式,同时生成最终功能代码,使用AOP的方式编程
在创建pojo属性的同时,可以提供为其添加基于jsr303的 annotation的验证
在对class操作后,roo会自动跳转后续都为其进行操作,可以通过在操作时,设置不同的--class属性进行选择
如 class --class Base 就可以跳转到对应的Base类
建立实体类的一对多关系
field set --fieldName toppings --element ~.domain.Topping
为当前类添加一个属性toppings,表示拥有多个的Topping对象
主要为set的使用,以及后续的element属性
在roo project中,同样也可以使用maven进行测试,打包等操作
创建web层
controller命令的使用
controller all --package ~.web //创建所有entity的controller,并且放置在子web目录下,并且会自动生成所需的web.xml等配置文件,以及添加spring MVC和URL rewrite,Tiles
可以使用mavan的命令,直接对roo项目进行部署测试
'mvn tomcat:run, 或者 mvn jetty:run
为程序添加安全支持 spring Securing
security setup命令:进行安装,注意必须在创建Web layer后,才可以进行添加.
会添加对应的applicationContext-security.xml文件
在页面中,meun.jspx可以使用<sec:authorize ifAllGranted="ROLE_ADMIN"> 对菜单进行配置
在controller中,可以通过注解进行配置权限
@RooWebScaffold(path = "pizzaorder",
automaticallyMaintainView = true,
formBackingObject = PizzaOrder.class,
delete=false,
update=false)
用于配置roo移除该controller的删除和更新的方法
http://localhost:8080/pazzashop/login 用于提供用户登录
定义UI界面
一般情况下,如果对entity对象进行了修改,会自动印象对应的controller与jsp界面,可以通过@RooWebScaffold(automaticallyMaintainView=false)配置,用于取消自动关联
Selenium Tests Selenium测试
自动生成对应的脚本,使用如下命令执行测试
selenium test --controller ~.web.ToppingController
也可以通过执行mvn selenium:selenese,使用mvn进行测试,区别在于.会打开firefox查看测试结果
Backups and Deployment 备份与部署
backup命令,用于创建一个保存了当前项目代码,日志和脚本记录的备份zip文件
perform package命令,用于生成部署所需的war包
区别于原来的dao service controller层次架构,roo的项目中,只有entity(类似dao)以及web层,通过使用jpa的底层,解决了在云计算平台上扩展的问题
Critical Technologies
roo peoject 中的两个重要技术, AspectJ与Spring
roo项目中,会针对class生成对应的*_Roo_*.aj文件,一个或多个, 成为AspectJ ITD文件,由Roo进行自动管理
所生成的.java类中,代码一般都比较简单,不过都带有许多注解,其中roo开头的注解将不会被编译到class代码中
当你重写了java文件的toString方法后,会自动删除对应的entity_Roo_ToString.aj文件,如果要重新使用自动生成的toString方法,可以通过annotation进行配置
@RooToString(toStringMethod="generatedToString"),但是注意这里生成的新的toString方法名为
generatedToString
Entity Layer 类(Domain层)
可以通过jpa的annotation对其进行修改,比如对其添加非空验证,修改其映射的表名等
@RooJavaBean 用于提供pojo对象的get和set方法,如果手动编写了get和set方法,那将会自动跳过
@RooEntity 为entity提供对应的JPA操作类
Web Layer
使用spring mvc提供了web的基本脚手架,包含了REST风格的URL rewrite,Apache Tiles,Spring JavaScript.以及一键式的命令为其添加Spring Security
Usage and Conventions 用法与公约
Add-On 插件安装和删除
下载后放置在$ROO_HOME/add-ons目录下,使用addon cleanup command,还包括$ROO_HOME/work的使用..(文档有些纠结)
在spring roo的project中,将一个class进行了分解,如entity类,通过修改分离get/set
,toString,以及对应的Dao方法,分别放在不同的类中,这样便于代码的阅读,在编译后,生成对应的代码....这个需要研究一下
同理,在controller中,分解成两个类,一个包含了传统的controller方法,则另外一个可以用于扩展
Base Add-Ons
目前插件开发的文档并没有写出,可能还未开发,不过如果要学习,就必须先开始了目前Roo
project中所使用的框架
目前roo中集成了 Jms email,jpa,spring security,selenium.spring web flow
评论
2 楼
friendsys
2010-03-11
大概了解了下,就是xml格式标准的jsp
1 楼
pure1202
2010-03-10
大哥,你好,是否了解spring roo生成的jspx文件?
发表评论
-
Android shell 创建 模拟器
2010-10-29 19:17 15541: 首先 下载sdk,并且配置合适的环境变量 ~/.bash ... -
使用maven+cargo远程发布应用
2010-10-27 15:04 1988感觉它还是依赖tomcat本身提供的web服务进行发布,所 ... -
Ant笔记
2010-10-26 19:57 1337Ant是一个在Java开发里面很传说的一个工具,以前一直听说, ... -
Propertiess资源文件的读取和简单的性能测试
2010-09-01 09:08 2461在编写代码时,常会考虑抽取一些可配置的参数到依赖文件中,其中比 ... -
基于Nio的socket连接 随记
2010-05-13 10:31 1218随便了解了下,也用搜到的代码理解了一下,稍微做了一些修改 ... -
Junit随记
2010-01-13 18:29 1059顶级的开发人员素养 在idea中,可以方便的使用ctrl+sh ... -
spring 下的一些Utils
2010-01-11 19:07 249407年的文章,对Spring提供的工具类提供了介绍,可以安排时 ... -
Apache随记
2009-12-03 14:31 1272对于Apache的学习,可以参 ... -
ibatis杂集
2009-12-02 14:38 1879基础配置文件为SqlMapConfig.xml,其中和Spri ... -
freemarker常见语法大全
2009-11-30 18:59 3258格式比较乱一些,适合ctrl+f搜索关键字 FreeMark ... -
常用Spring Annotation
2009-09-21 14:38 1343一:@Autowired 最常见的注解,用于注入一个已经配 ... -
Regular Expression 正则表达式使用(多语言)
2009-09-11 17:29 1536下面为在Editplus中使用内置的正则表达式的帮助 Regu ... -
Resource Releases Resource 资源释放.
2009-07-07 21:34 1033原文地址:http://www.c2.com/ ... -
Name Static Methods For Static Import 合理命名静态导入方法
2009-07-05 21:26 1071原文地址:http://www.c2.com/cgi/wiki ... -
Bounded Wildcards Increase Applicability 使用界限通配符提供适用性
2009-07-04 21:57 1109原文地址:http://www.c2.com/cgi/wiki ... -
Annotations Over Naming Conventions 使用注解代替命名约定
2009-07-03 23:08 1492越看这些文章,感觉Effect java 第二版里面基本都有. ... -
Annotations Over Tag Interfaces 使用注解代替标志接口
2009-07-02 23:31 1364原文地址:http://www.c2.com/cgi/wiki ... -
Varargs Collection Factory Method 参数集合工厂方法
2009-07-01 22:17 654原文地址 http://www.c2.com/ ... -
GWT Developer's Guide随记
2009-06-23 17:45 3185比Getting Started介绍的更详细一下 HTML ... -
GWT Tutorials节选
2009-06-19 18:56 1978本文写的乱七八糟..只 ...
相关推荐
Spring Roo是一个轻量级的Java开发工具,用于快速搭建Spring应用。它采用了一种新的方式来开发Spring应用程序,即通过命令行而非传统的集成开发环境(IDE)。Spring Roo提供了一系列命令,使得开发者可以轻松地创建...
**Spring Roo 简介,第 4 部分: 用 Spring Roo 和 Cloud Foundry 在云中快速开发应用程序** 在本篇文章中,我们将深入探讨 Spring Roo 的使用,以及如何结合 Cloud Foundry 进行云端应用开发。Spring Roo 是一个...
### Spring Roo 使用文档知识点概述 #### 一、Spring Roo 简介 - **Spring Roo** 是一个基于命令行的工具,旨在简化 Spring 应用程序的开发过程。 - **功能定位**:它通过提供一系列预定义的命令来加速应用程序的...
Spring Roo是一个用于快速开发Java应用程序的框架,它结合了Spring生态系统的强大功能,尤其是对Spring MVC、Spring Security、Spring Tiles、Spring Web Flow以及Spring测试支持等方面。 Spring Roo利用了一种...
**Spring ROO详解** Spring ROO是Spring框架下的一个快速开发工具,旨在简化Java应用程序的构建过程,尤其针对企业级应用。它通过自动化任务、代码生成以及最佳实践的应用,极大地提高了开发效率。Spring ROO的核心...
**Spring Roo命令文档** Spring Roo是Spring框架的一部分,它提供了一种快速开发工具,帮助开发者在Java应用中创建和管理代码。Roo通过自动化过程,简化了常见的开发任务,如设置项目结构、创建实体类、生成数据库...
Spring Roo是Spring框架家族中的一个创新工具,旨在简化Java应用程序的开发过程,特别是企业级应用。它基于Spring的模块化架构,提供了一种快速开发、自动化代码生成和最佳实践集成的解决方案。Spring Roo 1.1.3是该...
### SpringRoo官方文档知识点概览 #### 一、概述 SpringRoo 是一款由 Pivotal Software(现为 VMware 的一部分)开发的快速应用开发工具。它旨在帮助开发者简化基于Spring框架的应用程序构建过程。SpringRoo 通过...
SpringRoo是一个基于Java的开发工具,旨在加速Spring框架的应用程序开发。它通过自动化许多常见的配置和代码生成任务,使得开发者能够更专注于业务逻辑,而不是基础架构。在本"SpringRoo快速学习"资料中,我们将深入...
Spring Roo是Spring框架家族中的一个工具,用于加速Java开发,特别是企业级应用的构建。它通过命令行界面或集成开发环境(IDE)插件提供了一种快速开发的方式,可以帮助开发者生成代码、设置依赖和配置,使得开发...
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是Spring框架家族中的一个开发工具,它旨在加速Java应用程序的开发过程,特别是通过自动化常见任务和提供代码生成功能。Spring Roo 1.3.2是该工具的一个版本,其发布版本为RELEASE,意味着它是稳定且可供...
Spring Roo是Spring框架家族中的一个开发工具,它旨在加速Java应用程序的开发过程,特别是通过提供命令行接口和集成开发环境(IDE)插件来简化常见的编程任务。标题"spring-roo-1.1.5.RELEASE"指的是Spring Roo的一...
Spring Roo是Spring Framework的一个附加工具,它为Java开发者提供了一个快速开发平台,旨在简化和加速应用程序的构建过程。"spring-roo-1.1.0.M1.zip_54587.m1_M1 ssh_Spring Roo download_spri"这个标题暗示了这是...
【os-springroo2-sample_code】项目是一个关于Spring Roo的示例代码库,它展示了如何使用Spring Roo框架来快速开发应用程序。Spring Roo是Spring框架的一部分,它提供了一种简化和加速Java应用开发的方式,通过自动...
### Spring Roo - 高效开发框架的深度解析 #### 引言:Spring Roo与生产力的飞跃 Spring Roo作为Spring框架的扩展,旨在显著提升开发者在构建企业级Java应用时的效率。它通过自动化代码生成、简化项目搭建以及提供...
### SpringRoo-ReferenceDocumentation 1.2.5.RELEASE 关键知识点解析 #### 一、SpringRoo简介 **1.1 SpringRoo是什么?** SpringRoo是一款旨在提高开发效率的工具,它能够帮助开发者快速搭建基于Spring框架的...
Vaadin和Spring Roo是两个强大的Java开发框架,它们在创建高效、用户友好的Web应用程序方面发挥着重要作用。这个"vaadin-springRoo可运行的例子"是一个整合了这两个框架的实际项目,提供了完整的war包和源代码,使得...
### Spring Roo 简介 #### 一、Spring Roo 概览 Spring Roo 是一款针对 Java 技术的轻量级生产力工具,旨在快速便捷地开发基于 Spring 的应用程序。使用 Spring Roo 创建的应用程序遵循 Spring 最佳实践,并且基于...