spring roo 入门
-
准备工作:
-
从 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还提供了很多插 件可以帮忙简化更多开发工作,有待进一步探索,还有一点就是项目维护问题,既然代码都是自动生成的,免不了重构,不知道重构支持如何,继续考察。
已有 0 人发表留言,猛击->> 这里<<-参与讨论
ITeye推荐