epelpad

Iniciando con Spring Framework.

Spring Framework.

Spring es, como lo definen sus autores, un framework ligero para construir aplicaciones empresariales. Spring se encuentra dividido en distintos módulos, cada uno de los cuales se encarga de distintas funcionalides en nuestra aplicación. Posee un gran gama de módulos utilizados para distintas tareas, difícilmente todos se utilizan en una sola aplicación.

Si quieres saber más, te invito a visitar su sitio oficial: Spring Site


Construyendo un Hello Cruelty World con Spring.

Que necesitas:
Eclipse IDE (Yo utilizaré el Kepler).
Librerías Spring, bajalas Descargar Aquí
Comencemos:

1.
Crea Nuevo Proyecto.
Abrí el eclipse, crea un nuevo proyecto Java. Ponele el nombre que se te venga en gana, yo le puse SpringOne.




2.
Agrega las dependencias en el Java Build Path.

Lista de dependencias:
antlr-runtime-3.0.1
org.springframework.aop-3.1.0.M2
org.springframework.asm-3.1.0.M2
org.springframework.aspects-3.1.0.M2
org.springframework.beans-3.1.0.M2
org.springframework.context.support-3.1.0.M2
org.springframework.context-3.1.0.M2
org.springframework.core-3.1.0.M2
org.springframework.expression-3.1.0.M2
commons-logging-1.1

Descargalas desde aquí, o en el vínculo de más arriba.

Luego agregalas al Build Path. Clic en add external jars, selecciona las librerias que descargaste en el post (descomprimidas lógicamente).





3.
Crea una clase que la usaremos como bean.

Creen un paquete primero al que le pondremos com.betaroot, allí contendremos las clases para que no estén en el source.



Sobre el package creado crea la clase bean que la denominaremos HelloCruelty, el código para esta clase a continuación:


package com.betaroot;

public class HelloCruelty {
 private String message;

 public void getMessage() {
  System.out.println("Your Message : " + message);
 }

 public void setMessage(String message) {
  this.message = message;
 }

}


4.
Crea una clase main.

Crea main sobre el paquete com.betaroot A esta le llamaremos MainClass.


package com.betaroot;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class MainClass {
 public static void main(String[] args) {
  ApplicationContext context = new ClassPathXmlApplicationContext(
    "Beans.xml";);

  HelloCruelty obj = (HelloCruelty) context.getBean("helloCruelty");

  obj.getMessage();
 }
}


5.
Crea el XML de Configuración de Beans.

Este lo vamos a crear en el wizard de New:



Lo nombraremos Beans.xml


<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

   <bean id="helloCruelty" class="com.betaroot.HelloCruelty">
       <property name="message" value="Hello Cruelty World!"/>
   </bean>

</beans>


6.
Corre la aplicación.
El output que debería mostrar la app corriendo es:

Hello Cruelty World!


Explicación.

ClassPathXmlApplicationContext().
Permite cargar la configuración de los beans y eventualidades basadas en la API que se provee, se encarga de la creación e inicialización de todos los objetos.

getBean.
este método lo utilizamos en el contexto creado. Este permite usar un ID para el bean que retorna un objeto generico que finalmente puede ser convertido a un objeto actual. Una vez tienes este objeto, lo puedes usar para llamar cualquier método de clase.

Creación del XML de Configuración de Beans:
Por lo general los desarrolladores lo llaman Beans.xml. Es necesario asegurarse que el archivo este disponible en el CLASSPATH y que use el mismo nombre en la aplicación actual cuando se crea el application context como el que se muestra en la clase Main.

El Beans.xml es usado para asignar ID's únicas a los diferentes Beans y para controlar la creación de objetos con diferentes valores sin impactar ninguno de los Spring source files (archivos de fuente Spring).

Cuando una aplicación Spring carga en memoria, el Framework hace uso del archivo de configuración para crear todos los beans definidos y asignarles un ID único definido en el tag <bean>. Puedes usar un <property> tag para pasar diferentes valores de variables usados en tiempo de creación del objeto.


Mas tutoriales como este puedes encontrarlos en mi blog:
http://betaroot.blogspot.com/

9 comentarios - Iniciando con Spring Framework.

maximosoria906
Wow! me bajaron de nivel y no puedo dar puntos. Vas a seguir con estos tutoriales?
Ronaldark +1
Claro, lo que se vaya aprendiendo se posteará en el blog y posteriormente en taringa.
foxsermon +1
Buen aporte, aunque te falto incluir las imagenes de la fuenta
Sebastian350 +1
Yo laburo con este framework, este tuto no es mas que info muy muy muy basica, te recomiendo darle algo mas de orden a tu post, ya que casi no se ve la diferencia del codigo del texto normal, si queres algun manual bueno bajate el spring in action 3(ojala suban pronto la version pirata de la 4).
Ronaldark
Es correcto amigo, es básico por eso se llama "Iniciando con Spring Framework"
Sebastian350
Para evitarte el tema de las dependencias podes crear proyectos MAVEN, recomendado, me dijeron que el grails es una poronga frente al maven.
Ronaldark
Muchísimas gracias por tus comentarios, se nota que conoces sobre tecnologías Java pero como te repito es un tutorial de Inicio con Spring, explicar configuraciones Maven estaría fuera de lugar y podría ser en otro post de seguimiento.
Sebastian350
@Ronaldark No se si estaria fuera de contexto hablar de Maven, ya que ayuda bastante con las librerias a cualquier proyecto, la verdad no conozco mucho todavia sobre Spring, solo utilice el Spring MVC y el Spring Webflow, leyendo del libro que te mencione mas arriba, te deseo suerte y segui adelante que es una herramienta demasiado buena, saludos.
Jimmhy
es bueno encontrar post de Java, buen inicio chaval.