lunes, 19 de abril de 2010

Spring e Ibatis II

SqlMapConfig.xml

Es uno de los archivos fundamentales para configurar Ibatis en nuestro proyecto.

Tiene este aspecto:

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE sqlMapConfig
PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">

<sqlMapConfig>

<sqlMap resource="______.xml"/>

</sqlMapConfig>



Este archivo indica la ruta donde está el archivo que contiene las sentencias SQL del proyecto.
Dicho archivo también es un archivo .xml, y en él se especifican las sentencias que se usan, además de los parámetros que recibirán.

Spring e Ibatis.

Librerías necesarias para que un proyecto pueda trabajar con Spring e Ibatis:

antlr-2.7.6.jar
cglib-nodep-2.1_3.jar
commons-collections.jar
commons-logging.jar
dom4j-1.6.1.jar
ibatis-2.3.4.726.jar
jta.jar
spring.jar

Una vez las tengas colocadas en tu proyecto es hora de crear el archivo applicationContext.xml. Para ello le damos a File -> New -> Spring Bean Definition.



Se crea el archivo y se le añade las declaraciones al xml. Seleccione las que se ven en la imagen.



aop - http://www.springframework.org/schema/aop
bean - http://www.springframework.org/schema/beans
tx - http://www.springframework.org/schema/tx

Yo voy a usar las de la versión 2.5

De esta forma cuando hagamos click en Finish tendremos en nuestro proyecto un archivo .xml llamado applicationContext, con este aspecto.





El primer paso es declarar la fuente de datos, la conexión a la base de datos que vamos a usar.
Para ello en nuestro applicationContext.xml colocamos estas líneas:

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="url" value="jdbc:mysql://localhost/nombre_BD"/>
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="username" value=""/>
<property name="password" value=""/>
</bean>

      
El segundo paso sería crear el bean del objeto sqlMapClient tal que así:

<bean id="sqlMapClient"
class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">

<property name="configLocation" value="conf/SqlMapConfig.xml"/>
<property name="dataSource" ref="dataSource"/>
</bean>


Este objeto es el elemento principal para la gestión de la persistencia en iBatis. Las palabras en negrita son palabras clave, y es muy importante no modificarlas.

Como podéis comprobar, la propiedad configLocation tiene el valor "conf/SqlMapConfig.xml". Este es otro archivo que debemos tener en nuestro proyecto y que en el próximo post explicaré como se hace.