Spring Roo
San Antonio JUG, 1 July 2010
Ryan Stewart
Spring Roo
What is it?
What does it do?
Why is it cool?
What is it?
Roo's mission:
fundamentally and sustainably improve Java
developer productivity without compromising
engineering integrity or flexibility
What is it?
End user description of Roo:
Roo is a little genie who sits in the background
and handles the things I don't want to worry
about.
What is it?
A process
Dev-only
A RAD environment
CoC
What does it do?
Demo!
What does it do?
Roo Infrastructure
@Roo
Annotations
provide
STS
Roo
Roo
Roo
Add-Ons
Roo
Add-Ons
Add-Ons
Add-Ons
source only
retention
Shell
monitor and
change
User's Project
.aj
.java
.xml
.jsp
.properties
What does it do?
AspectJ ITDs
Person_Roo_
[Link]
write
toString():String
Roo
Roo
Roo
Add-Ons
Roo
Add-Ons
Add-Ons
Add-Ons
[Link]
read
name:String
Person_Roo_
[Link]
getName():String
setName(String):void
read
AspectJ
Compiler
read
[Link]
write
name:String
toString():String
getName():String
setName(String):void
Why is it cool?
Builds on what you know
AspectJ
JPA/Hibernate
Java
Selenium
Log4J
Spring MVC
Maven
JSP
Eclipse/STS
Spring Framework
Why is it cool?
Builds on Java's strengths
Hybrid code generation
No performance penalties
Zero lock-in
Openness
Why is it cool?
Project management
General object services
Entity support
Field management
Dynamic finders
Persistence
JUnit testing
Spring MVC, Spring Web Flow and Selenium
JMS, SMTP and build system integration
Spring Security, Logging Setup.....
Resources
Home [Link]
Contains links to all other resources
Forum [Link]
Roo team actively monitor forum and answer
queries
Issues [Link]
Twitter #roo hash key