Bootstrap

Dec 2, 2012 by     4 Comments    Posted under: Groovy

Cuando creamos una aplicación con Grails ésta nos crea varios archivos y entre ellos nos crea uno en específico llamado BootStrap.groovy. Este archivo en particular nos sirve para ejecutar acciones al inicio de nuestra aplicación o antes de terminar.

Supongamos que al iniciar nuestra aplicación queremos que cargue a un determinado grupo de usuarios de prueba para usarlos con Spring Security o que queremos cargar un catálogo de categoría de libros ( :P ) Para realizar eso ubicamos en el archivo el closure de init y ahí procedemos a hacer lo siguiente :

class BootStrap {
    def init = { servletContext
        new Categoria( categoria : "Programación" ).save()
        new Categoria( categoria : "Historia" ).save()
    }
    def destroy = {
    }
}

Incluso en esta parte podemos hacer uso de los environments por ejemplo si queremos que unos usuarios se carguen al inicio de la aplicación pero sólo para el ambiente de desarrollo podemos hacer lo siguiente :

class BootStrap {
    def init = { servletContext
        switch(Environment.current){
        case Environment.DEVELOPMENT :
            new Usuario( username : "usuario", password : "12345678" ).save()
            new Usuario( username : "usuario2", password : "12345678" ).save()
        break
        case Environment.TEST :
        break
        case Environment.PRODUCTION :
        break
        }
    }
    def destroy = {
    }
}

Bueno con esto terminaremos esto nos vemos en el siguiente post.

4 Comments + Add Comment

  • excelente forma de acceder al los environments, solia usar un metodo bastante mas extenso, gracias por el dato

  • Gracias y que bueno que te fue de ayuda ñ_ñ. De lo que se me olvidó anotar ahí fue el import del Environment.

    import grails.util.Environment

    Saludos.

  • ¿Y para que sirve el destroy?

  • Para liberar los recursos o cualquier otra cosa que necesites hacer al final de la aplicación.
    Saludos

Got anything to say? Go ahead and leave a comment!

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*