Está en la página 1de 7

Programacion en CAPAS

1) Crear un Dynamic WEB Proyect. 2) Crear un package llamado bean 3) Crear una clase llamada beanPersona: private int Codigo; private String Nombre; private int edad;

public int getCodigo() { return Codigo; } public void setCodigo(int codigo) { Codigo = codigo; } public String getNombre() { return Nombre; } public void setNombre(String nombre) { Nombre = nombre; } public int getEdad() { return edad; } public void setEdad(int edad) { this.edad = edad; } 4) Crear package daoFactori. 5) Crear la la clase DAOFactory public static final int MYSQL = 1; /* public static final int ORACLE = 2; public static final int DB2 = 3; public static final int SQLSERVER = 4; public static final int XML = 5; */ // Existir un mtodo por cada DAO que pueda ser creado. // Ejemplo: //public abstract ArticuloDAO getArticuloDAO(); public abstract PersonaDAO getPersonaDAO();

public static DAOFactory getDAOFactory( int whichFactory){ switch(whichFactory){ case MYSQL: return new MySQLDAOFactory(); /* case SQLSERVER: return new SqlDAOFactory(); case ORACLE: return new OracleDAOFactory();*/

/*case DB2: return new Db2DAOFactory(); case SQLSERVER: return new SqlServerDAOFactory(); case XML: return new XmlDAOFactory();*/ default: return null; } } 6) Crear la clase MySQLDAOFactory import daoInterfaz.*; import daoMysql.*; public class MySQLDAOFactory extends DAOFactory {

public PersonaDAO getPersonaDAO(){ return new MysqlPersona(); } 7) Crear el package daoInterfaz 8) Crear la interface PersonaDAO public interface PersonaDAO { public int RegistroPersona (beanPersona persona) throws Exception; } 9) Crear el package daoMysql 10) Crear la clase MysqlPersona public class MysqlPersona implements PersonaDAO { public int RegistroPersona (beanPersona persona) throws Exception { int r = 0; Connection con = MySQLConexion.getConnection(); String sql = "INSERT INTO persona (Id,Nombre,Edad) " + "VALUES (?,?,?)"; PreparedStatement pstm=con.prepareStatement(sql); pstm.setInt(1, persona.getCodigo()); pstm.setString(2, persona.getNombre()); pstm.setInt(3, persona.getEdad()); System.out.println("SENTENCIA CLIENTE INSERTAR SQL : " + sql); r= pstm.executeUpdate(); return r ; } }

11) Crear package lgica 12) Crear la clase logicaPersona public class logicaPersona { public int registrarPersona (beanPersona persona){ int r =0; DAOFactory Factoria = DAOFactory.getDAOFactory(DAOFactory.MYSQL); PersonaDAO DAOPersona = Factoria.getPersonaDAO(); try { r= DAOPersona.RegistroPersona(persona); } catch (Exception e) { e.printStackTrace(); }

return r ; }

} 13) Crear el package servlet 14) Crear el servlet Datos. public class Datos extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public Datos() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub int Codigo = Integer.parseInt(request.getParameter("Codigo")); String Nombre = request.getParameter("Nombre"); int Edad = Integer.parseInt(request.getParameter("Edad"));

beanPersona per = new beanPersona();

per.setCodigo(Codigo); per.setNombre(Nombre); per.setEdad(Edad); logicaPersona logicapersona =new logicaPersona(); logicapersona.registrarPersona(per); String jsp="index2.jsp?Codigo="+Codigo+"&Nombre="+Nombre+"&Edad="+Edad; response.sendRedirect(jsp);

} /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub } } 15) Crear package til. 16) Crear clase MySQLConexion public class MySQLConexion { // para crear una conexion a MySQL public static Connection getConnection() { // usar el driver y la url para crear la conexin try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { System.out.println("no encontro la clase del driver"); } Connection connection = null; try { String servidor = "localhost"; String puerto = "3306"; String bD = "mierda"; String usuario = "root"; String clave = ""; String url = "jdbc:mysql://" + servidor + ":" + puerto + "/" + bD; System.out.println("la url es :" + url); connection = DriverManager.getConnection(url, usuario, clave); } catch (SQLException e) {

System.out.println("error al conectarse"); // obtenemos un mensaje de error entendible para el usuario String message = e.getMessage(); System.out.println("mensaje para el usuario :" + message); // obtenemos el error de acuerdo a las convenciones SQL,es decir un // estado del error String sqlState = e.getSQLState(); System.out.println("mensaje de error SQL :" + sqlState); // obtenemos el codigo especifico del error de acuerdo al proveedor // de BD que estamos usando int errorCode = e.getErrorCode(); System.out.println("codigo especifico de error en MySQL :" + errorCode); } return connection; } } 17) Crear el package test 18) Crear la clase Test public static void main(String[] args) { // TODO Auto-generated method stub beanPersona beanpersona = new beanPersona(); beanpersona.setCodigo(3); beanpersona.setNombre("Jodete"); beanpersona.setEdad(23);

try { MysqlPersona per = new MysqlPersona(); per.RegistroPersona(beanpersona);

} catch (Exception e) { e.printStackTrace(); // TODO: handle exception }

19) Crear el index.jsp <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <link rel="STYLESHEET" type="text/css" href="estilos.css"> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>REGISTRO DE PERSONAS</title> </head> <body> <form name="persona" action="Datos" method="get"> <table> <tr> <td>Codigo</td> <td><input size="20" name="Codigo"></input></td> </tr> <tr> <td>Nombre</td> <td><input size="20" </tr> <tr> <td>Edad</td> <td><input size="20" </tr>

name="Nombre"></input></td>

name="Edad"></input></td>

</table> <input type="submit" name="submit" value="Registrar"></input> </form> </body> </html> 20) Crear index2.jsp <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <% int Codigo = Integer.parseInt(request.getParameter("Codigo")); String Nombre=request.getParameter("Nombre"); int Edad = Integer.parseInt(request.getParameter("Edad")); %> <html> <head> <link rel="STYLESHEET" type="text/css" href="estilos.css"> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Persona Registrada</title> </head>

<body> <table border=1> <TR> <td>Codigo</td> <td><%=Codigo %></td> </TR> <TR> <td>Nombre</td> <td><%=Nombre %></td> </TR> <TR> <td>Edad</td> <td><%=Edad %></td> </TR> </table> </body> </html>