SPRING ROO: MEJORA TU PRODUCTIVIDAD DANDO SALTOS CON EL CANGURO
Rafael Antonio Gutiérrez Turullols@[email protected]://abaddon-gtz.blogspot.com
Septiembre 4, 2010, México, D.F
Demo de Introducción Introducción Demos Desarrollo de Add-ons Demos Proyecto SpringHispano Add-ons
ES Herramienta RAD para Java (basada en texto) ES extensible ES para su uso es en tiempo de desarrollo ES un generador de código NO ES un plugin de algún IDE NO ES un software de administración de proyectos NO ES una herramienta para construir proyectos
AspectJ Framework para programar orientado a aspectos (AOP). Spring Roo usa los Inter-Type Declaration (ITD) Genera *_Roo_*.aj
Spring Otros frameworks como: Spring Security y Spring Web
Flow. Aspectos de Spring: @Configurable y manejo de
transacciones Escaneo de componentes marcados con anotaciones
Spring.
Alta productividad Fácil de aprender y usar
TAB, hint y help Herramientas estándar Java
JPA, Maven, JSP, Junit, Spring, … Sin compromisos Fácil de remover
Generador Pasivo Reacciona a instrucciones del usuario
Generador Activo Reacciona a cambios en el código
Es un generador de código hibrido PASIVO = Shell y comandos▪ Hace el cambio y nada mas (.xml y .java)
ACTIVO =Se activa sobre los .java marcados con @Roo*▪ Monitorea los cambios en el .java y actualiza .aj, .jsp
Típica Aplicación Web basada en Spring MVC Base de datos Persistencia vía JPA Pruebas unitarias con JUnit Maven para construir el proyecto Spring para la inyección de dependencias.
Google Web Toolkit, desde 1.1.0.M1 Add-on de Flex, desde la 1.1.0.M2 (se instala aparte) Capas:
Entidad (dominio) Web Servicios y DAO (no se generan pero se pueden incluir)
Todos los comandos de Spring Roo son add-ons. Son los add-ons Base.
Comando para crear un proyecto tipo "add-on": project --topLevelPackage zzz.xxx.yyyy --template
ROO_ADDON_SIMPLE Desde la 1.1.0.M2 add-ons para crear add-ons:
addon create advanced addon create simple
El método que atiende la ejecución del comando puede: Tirar cualquier tipo de Exception para cancelar
la ejecución del comando y revertir (rollback) los cambios.
Usar el Logging del JDK o regresar objetos que se imprimiran en la consola.
Roo tiene los siguientes servicios (entre otros) a nuestra disposicion: org.sf.roo.process.manager.FileManager
▪ crear directorios/archivos, consultar los detalles de archivos, leer InputStreams.
org.sf.roo.project.PathResolver▪ información sobre los paths, resolver paths
org.sf.roo.project.ProjectOperations▪ acciones sobre el pom.xml
org.sf.roo.metadata.MetadataService org.sf.roo.classpath.operations.ClasspathOperations
Comandos importantes: Instalar un addon:
felix shell start file://<ruta> Ver los add-ons instalados:
osgi ps desinstalr un addon:
osgi uninstall --bundleSymbolicName zzz.xxx.yyy actualizar un addon:
osgi update --bundleSymbolicName zzz.xxx.yyy
Refactor->Push-in con Eclipse
Buscar y reemplazar las anotaciones e imports en los Java Expresion regular = “\n.*Roo.*\n” Reemplazar con “\n”
Quitar las dependencias en el pom.xml
Con la comunidad y para la comunidad desarrollar add-ons de Spring Roo que nos ayuden a realizar nuestra labor diaria en la escuela y/o trabajo de
manera mas rápida y sencilla
Test Data Builder Addon.
Auditable Fields Addon.
Copy Fields Addon.
SDL/Swing Addon.
Jersey Addon.
Pagina: http://www.springsource.org/roo Foros: http://forum.springsource.org/forumdisplay.php?f=67 Twitter: @SpringRoo, @benalexu, @schmidtstefan Jira: http://jira.springframework.org/browse/ROO Repositorio Git: git clone git://git.springsource.org/roo/roo.git Libro (próximamente): Roo in Action de Manning,
@RooInAction Mi Blog: http://abaddon-gtz.blogspot.com (Etiqueta
'Spring Roo') SpringHispano Addons:
http://code.google.com/p/springhispano-addons/
Recommended