| Spring Framework | |
| Inicio | Cursos infosintesis.net liberados | Java EE | Fundamentos Spring | VMP - Adaptador contabilidad con Spring | |
| VideoMarketPlace - Adaptador contabilidad con Spring | |
| Paso 3: Operativa |
Diagrama de Clases de Diseño de la aplicación - Solución con Spring y anotaciones
Primero de todo vamos a crear la aplicación VideoMarketPlace con una solución tradicional teniendo en cuenta que de momento sólo utilizaremos el adaptador de la contabilidad de SAP.
Este es el Diagrama de Clases de la aplicación

Conectar con el módulo finanaciero de SAP - Solución con Spring y anotaciones
Para conectar con el módulo financiero de SAP vamos a crear las siguientes clases e interfaces:
Crear dos nuevos paquetes
Con tal de poder avanzar en este ejemplo y mantener en el IDE Eclipse todo el código que hemos creado en los Pasos 1 y 2, vamos a crear dos nuevos paquetes llamados com.infosintesis.accounting.annotations.beans y com.infosintesis.accounting.annotations.spring.
Nota: Debido a que los dos nuevos paquetes van a mantener todas las clases de los paquetes com.infosintesis.accounting.beans y com.infosintesis.accounting.spring en vez de crear nuevos paquetes, lo vamos a copiar y pegar tal y como hicimos en Apendice - Eclipse - Copiar un paquete Java.
Interfaz IAdapterAccounting y clases SAPAdapterAccounting, COBOLAdapterAccounting y ApterAccounting
Para añadir la anotación @Service a la clase SAPAdapterAccounting, situamos el cursor encima de la declaración de la clase y escribimos la combinación de teclas Ctrl + espacio. En el desplegable seleccionamos @Service - org.springframework.stereotype

Este es el aspecto de la clase SAPAdapterAccounting después de añadirle la anotación
| package com.infosintesis.accounting.annotations.beans; import org.springframework.stereotype.Service; @Service
|
Vamos a realizar la misma acción para la clase COBOLAdapterAccounting
| package com.infosintesis.accounting.annotations.beans; import org.springframework.stereotype.Service; @Service |
Ahora le toca el turno a la clase Accounting
package com.infosintesis.accounting.annotations.beans; import org.springframework.stereotype.Service; @Service public IAdapaterAccountig adpapterAccounting = null; |
Spring utiliza anotaciones a partir de la versión 2.5
Estos son los cambios que tenemos que realizar para trabajar con anotaciones y crear una dependencia con la Clase SAPAdapterAccounting,
package com.infosintesis.accounting.annotations.beans; import org.springframework.beans.factory.annotation.Autowired; @Service("idAccounting") @Autowired |
Modificar el documento XML de declaración de los beans de Spring
Vamos a cambiar todo el contenido del fichero vmpaccountingspring.xml que se encuentra en el paquete com.infosintesis.annotations.spring para poder trabajar con anotaciones
<?xml version="1.0" encoding="UTF-8"?> <context:component-scan <task:annotation-driven executor="myExecutor" scheduler="myScheduler"/> <task:executor id="myExecutor" pool-size="5"/> <task:scheduler id="myScheduler" pool-size="10"/> |
Clase Main
Ahora vamos a crear una clase que arrancará la aplicación de escritorio. Esta clase se alojará en el paquete com.infosintesis.accounting.annotations.spring. En una aplicación Java Web podría ser un servlet realizando funciones de fachada y controlador.
Nota: La clase en cuestión se va a llamar Main. Para recordar cómo se crea una clase que contiene el método main() podemos seguir este vínculo Apendice - Eclipse - Crear una nueva clase Java que contiene el método main
Como podemos observar desde el método main(...) creamos una instancia de la clase Accounting y seguidamente invocamos al método recordIncome(...) pasándole como argumento el valor 6.7.
package com.infosintesis.accounting.annotations.spring; public class Main { public static void main(String[] args) { |
Ejecutar la aplicación
Nota: Para ejecutar la aplicación tenemos que seguir este vínculo Apendice - Eclipse - Ejecutar una aplicación de escritorio
En la pestaña Console podemos ver el resultado de la ejecución
