Dando saltos con Spring Roo

Post on 12-Jul-2015

2.830 views 1 download

Transcript of Dando saltos con Spring Roo

SPRING ROO: MEJORA TU PRODUCTIVIDAD DANDO SALTOS CON EL CANGURO

Rafael Antonio Gutiérrez Turullols@abaddon_gtzabadon.gutierrez@gmail.comhttp://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/