Sei sulla pagina 1di 8

Crear un proyecto usando sql de java estndar Datos para la clase que crea las conexiones. package aprendamos.java.

util; import java.sql.*; public class MySqlDBConn { /** *Permite Cargar en Memoria los Drivers */ static { try { Class.forName("com.mysql.jdbc.Driver"); } catch (Exception e) { System.out.println(e.getMessage()); } } /** * Obtiene una conexin a la Base de Datos. */ public Connection getConnection() { Connection connection = null; try { connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/bd_s truts","root","admin"); } catch (Exception e) { System.out.println(e.getMessage()); } return connection; } }

Crear las clases que permitan implementar los mtodos Insertar, buscar, eliminar, modificar, usando java estndar.

Crear un proyecto para hacer operaciones con la base de datos usando ibatis

Crear una clase con atributos y mtodos set y get que permitan usar la informacin de las tablas package aprendamos.java.bean; import java.io.Serializable; public class DistritoDTO implements Serializable { private static final long serialVersionUID = 1L; private int codigo; private String descripcion; public int getCodigo() { return codigo; } public void setCodigo(int codigo) { this.codigo = codigo; } public String getDescripcion() { return descripcion; } public void setDescripcion(String descripcion) { this.descripcion = descripcion; } }

Crear un archivo que contenga las sentencias usando ibatis archivo Distrito.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd"> <sqlMap namespace="Distrito" >

<!-- definimos un alias para DistritoDTO --> <typeAlias alias="distrito" type="aprendamos.java.bean.DistritoDTO" />

<select id="ibatis_buscaDistritoCodigo"

parameterClass="java.lang.Integer" resultClass="distrito" > select * from tbdistrito where coddis = #value# </select> <select id="ibatis_listaDistritoPorNombre" parameterClass="java.lang.String" resultClass="distrito" > select coddis AS codigo, descripcion AS descripcion from tbdistrito where descripcion like #value# </select> <select id="ibatis_listaDistrito" resultClass="distrito" > select coddis AS codigo, descripcion AS descripcion from tbdistrito </select>

<insert id="ibatis_registraDistrito" parameterClass="distrito" > insert into tbdistrito values(null, #descripcion#) </insert> <update id = "ibatis_modificaDistrito" parameterClass="distrito"> UPDATE tbdistrito SET descripcion = #descripcion# WHERE coddis = #codigo# </update> <update id = "ibatis_eliminaDistrito" parameterClass="java.lang.Integer" > DELETE FROM tbdistrito WHERE coddis = #value# </update> </sqlMap>

En la carpeta raz (src), crear un archivo de configuracin de ibatis <?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> <transactionManager type="JDBC"> <dataSource type="SIMPLE"> <property name="JDBC.Driver" value="com.mysql.jdbc.Driver" /> <property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost:3306/base3" /> <property name="JDBC.Username" value="root" /> <property name="JDBC.Password" value="admin" /> </dataSource> </transactionManager> <sqlMap resource="aprendamos/java/ibatis/Distrito.xml" /> </sqlMapConfig>

Crear una interface con los mtodos a ser implementados posteriormente package aprendamos.java.dao; import java.util.List; import aprendamos.java.bean.DistritoDTO; public interface DistritoDAO { public abstract List<DistritoDTO> obtenerDistritos() throws Exception; public public public public Exception; public } void void void agregar(DistritoDTO bean) throws Exception; modificar(DistritoDTO bean) throws Exception; eliminar(Integer cod) throws Exception; cod) throws

DistritoDTO

consultaCodigo(Integer

List<DistritoDTO>

consultaTodo() throws Exception;

Crear la clase que implemente los mtodos de la interface package aprendamos.java.dao;

import import import import import

java.sql.Connection; java.sql.PreparedStatement; java.sql.ResultSet; java.util.ArrayList; java.util.List;

import com.ibatis.sqlmap.client.SqlMapClient; import import import import import aprendamos.java.bean.DistritoDTO; java.io.Reader; java.io.IOException; java.io.Reader; java.util.List;

import com.ibatis.common.resources.Resources; import com.ibatis.sqlmap.client.SqlMapClient; import com.ibatis.sqlmap.client.SqlMapClientBuilder; public class MySqlDistritoDAO implements DistritoDAO private static Reader reader; private static SqlMapClient sqlMap; static { try { reader = Resources.getResourceAsReader("ConfiguracionIbatis.xml"); sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader); } catch (IOException e) { e.printStackTrace(); } } {

/* (non-Javadoc) * @see aprendamos.java.dao.DistritoDAO#obtenerDistritos() */ public List<DistritoDTO> obtenerDistritos() throws Exception { List<DistritoDTO> distritos = new ArrayList<DistritoDTO>(); distritos=sqlMap.queryForList("ibatis_listaDistrito", null); for (DistritoDTO b: distritos){ System.out.println("Codigo:"+ b.getCodigo()+ " nombre:"+ b.getDescripcion()); }

return distritos; } @Override public void agregar(DistritoDTO bean) throws Exception { System.out.println( "valor de resultado antes de insertar: "); sqlMap.insert("ibatis_registraDistrito", bean); System.out.println( "valor de resultado despues de insertar: "); } @Override public DistritoDTO consultaCodigo(Integer cod) throws Exception { // TODO Auto-generated method stub DistritoDTO bean = new DistritoDTO() ; bean = (DistritoDTO)sqlMap.queryForObject("ibatis_buscaDistritoCodigo",co d); return bean; } @Override public List<DistritoDTO> consultaTodo() throws Exception { System.out.println("listando todos los distritos:)"); List<DistritoDTO> lista = new ArrayList<DistritoDTO>(); lista=sqlMap.queryForList("ibatis_listaDistrito", null); for (DistritoDTO b: lista){ System.out.println("Codigo:"+ b.getCodigo()+ " nombre:"+ b.getDescripcion()); } return lista; } @Override public void eliminar(Integer cod) throws Exception { System.out.println("eliminar: "); sqlMap.delete("ibatis_eliminaDistrito", cod); System.out.println("eliminado: "); } @Override public void modificar(DistritoDTO bean) throws Exception {

sqlMap.update("ibatis_modificaDistrito", bean); }

Crear clase para probar los mtodos /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package pack1; import import import import import import aprendamos.java.bean.DistritoDTO; aprendamos.java.service.ServiceImpl; java.util.ArrayList; java.util.List; java.util.logging.Level; java.util.logging.Logger;

/** * * @author Administrador */ public class Prueba { /** * @param args the command line arguments */ public static void main(String[] args) { Prueba p = new Prueba(); //p.agrega(); // p.listarTodos(); //p.eliminar(); p.modificar(); } private void listarTodos(){ ServiceImpl s = new ServiceImpl(); List<DistritoDTO> lista = new ArrayList<DistritoDTO>(); try {

lista = s.listarTodos(); } catch (Exception ex) { ex.printStackTrace(); } } private void modificar(){ ServiceImpl s = new ServiceImpl(); DistritoDTO d = new DistritoDTO(); d.setCodigo(1); d.setDescripcion("SANTIAGO DE SURCO"); try { s.modificarDistrito(d); } catch (Exception ex) { ex.printStackTrace(); } } private void agrega(){ ServiceImpl s = new ServiceImpl(); DistritoDTO d = new DistritoDTO(); d.setDescripcion("SAN BORJA"); try { s.registraDistrito(d); } catch (Exception ex) { ex.printStackTrace(); } } private void eliminar(){ ServiceImpl s = new ServiceImpl(); try { s.eliminaDistrito(2); } catch (Exception ex) { ex.printStackTrace(); } } }

Potrebbero piacerti anche