jueves, 26 de marzo de 2015

Clase de Verificacion de repeticion de datos con base de datos

public boolean getAsociacionesNombre(String asociacion) {
        try {
            String consulta = "select nombre from asociaciones where nombre = '" + asociacion + "'";
            cn = new Conexion();
            cn.conectar();
            ResultSet rs = cn.consulta(consulta);
            rs.next();
            String nombre = rs.getString("nombre");
            cn.close();
            return nombre.toUpperCase().equals(asociacion.toUpperCase());

        } catch (SQLException e) {
            return false;
        }
    }

Clase Ver desde base de dator

public ArrayList<Empleado> getEmpleado() {
        ArrayList<Empleado> empleados = new ArrayList<>();
        try {
            String consulta = "select * from empleados";
            cn = new Conexion();
            cn.conectar();
            try (ResultSet rs = cn.consulta(consulta)) {
                while (rs.next()) {
                    empleados.add(new Empleado(rs.getInt("idempleado"), rs.getString("nombre"), rs.getString("apellido"), rs.getString("puesto")));
                }
            }
        } catch (SQLException e) {
        }

        return empleados;
    }

/*************************************************************/

//MODELO Y TABLA PARA ZONAS
    public DefaultTableModel modZona() {
        DefaultTableModel modelo = new DefaultTableModel() {
            @Override
            public boolean isCellEditable(int row, int column) {
                return false;
            }
        };

        modelo.addColumn("IdZona");
        modelo.addColumn("Zona");

        return modelo;
    }
    public void zonas(JTable tabla, String idAsociacion) {
        DefaultTableModel modelo = modZona();
        tabla.setModel(modelo);
        //tabla.removeAll();

        ArrayList<Zona> zona = new Ver().getZona(idAsociacion);

        for (Zona zon : zona) {
            int idZona = zon.getIdZona();
            String nombre = zon.getNombre();

            Object[] data = {idZona, nombre};
            modelo.addRow(data);

            tabla.getColumnModel().getColumn(0).setMinWidth(0);
            tabla.getColumnModel().getColumn(0).setMaxWidth(0);
            tabla.getColumnModel().getColumn(0).setPreferredWidth(0);

        }
    }
/*********************************************************/
//Usuando un JComboBox

public void comboAsociaciones(JComboBox asociacion) {
        asociacion.removeAllItems();
        asociacion.addItem("--Seleccionar--");

        ArrayList<Asociaciones> listAso = new Ver().getAsociaciones();

        for (Asociaciones asociaciones : listAso) {

            String nombre = asociaciones.getNombre();
            asociacion.addItem(nombre);
        }
        listAso = null;
    }

Clase Retorno desde base de datos

   public ArrayList<Usuario> getUsuario(String usuario, String pass) {
        ArrayList<Usuario> usuarios = new ArrayList<>();
        try {
            String consulta = "select * from usuario where usuario = '" + usuario + "' and contrasena = '" + pass + "'";
            cn = new Conexion();
            cn.conectar();
            try (ResultSet rs = cn.consulta(consulta)) {
                while (rs.next()) {
                    //usuarios.add(new Usuario(true,rs.getInt("idUsuario"),rs.getInt("idEmpleado_Empleados"),rs.getString("usuario"),rs.getString("contrasena"),rs.getString("tipo")));
                    usuarios.add(new Usuario(true, rs.getInt("idUsuario"), rs.getInt("idEmpleado"), rs.getString("usuario"), rs.getString("contrasena"), rs.getString("tipo")));
                }
            }
        } catch (SQLException e) {
            usuarios.add(new Usuario(false));
        }
        return usuarios;
    }

/******************************************************/

public String nombreAsociacion(String idAsociacion) {
        String nombre = "";
        try {
            String consulta = "select nombre from asociaciones where idAsociaciones = " + idAsociacion + "";
            cn = new Conexion();
            cn.conectar();
            try (ResultSet rs = cn.consulta(consulta)) {
                rs.next();
                nombre = rs.getString("nombre");
            }
        } catch (SQLException e) {

        }
        return nombre;
    }

Clase Insertar a base de datos por ArrayList

public String[] agregar(Modelo nombre) {
        try {
            String insertar = "exec insertar" + nombre.getId() + ", '" + nombre.getNombre() + "'";
            cn = new Conexion();
            cn.conectar();
            cn.insertar(insertar);
            cn.close();
            return new String[]{"b", "Se ha registrado correctamente"};
        } catch (SQLException e) {
            return new String[]{"m", "Error en base de datos: " + e.getMessage()};
        }
    }

Clase Coneccion

    private final String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
    private final String URL =  "jdbc:sqlserver://localhost:1433;databaseName=.....";
    private final String USER = "";
    private final String PASS  = "";

    private Connection cn = null;
    private Statement st = null;

    public void conectar() throws SQLException{
        try {
            Class.forName(DRIVER);
            cn = DriverManager.getConnection(URL, USER, PASS);
        } catch (ClassNotFoundException | SQLException e) {
            System.out.println(e.getMessage());
        }
    }
 
    public void close() throws SQLException{
        this.cn.close();
    }
 
    public int insertar(String insertar) throws SQLException{
        st = (Statement) this.cn.createStatement();
        return st.executeUpdate(insertar);
    }
 
    public void actualizar(String actualizar) throws SQLException{
        st = (Statement) this.cn.createStatement();
        st.executeUpdate(actualizar);
    }
 
    public int borrar(String borrar) throws SQLException{
        st = (Statement) this.cn.createStatement();
        return st.executeUpdate(borrar);
    }
 
    public ResultSet consulta(String consulta) throws SQLException{
        st = (Statement) this.cn.createStatement();
        return this.st.executeQuery(consulta);
    }

martes, 3 de diciembre de 2013

Conceptos Básicos


Una clase es una plantilla (molde), que define atributos (variables) y métodos (funciones)

Un objeto es una implementacion de una clase 


Se denomina encapsulamiento al ocultamiento del estado, es decir, de los datos miembro de un objeto de manera que sólo se pueda cambiar mediante las operaciones definidas para ese objeto.



Polimorfismo: podemos definirlo como la capacidad que tienen los objetos de comportarse de múltiples formas, programando de manera general en vez de hacerlo de forma especifica.

Un parámetro es una variable que puede pasar su valor a un procedimiento desde el principal o desde otro procedimiento.


Un método en Java es un conjunto de instrucciones definidas dentro de una clase, que realizan una determinada tarea y a las que podemos invocar mediante un nombre.



Control de Registros antes de guardar en BD

public void control_Ing_Usuario(JTextField txtId,JTextField txtNombreUsuario, JTextField txtContrasena,JComboBox cbFecha){
       
        String id, nombreUs,contrasenaUs, fecha;
               
         id = txtId.getText();
        nombreUs = txtNombreUsuario.getText();
        contrasenaUs = txtContrasena.getText();
        fecha = cbFecha.getSelectedItem().toString();
       
             
        try {
           
                if((!"".equals(nombreUs)) && (!"".equals(contrasenaUs)) && (!"".equals(fecha))){
               
                BaseDatosInsertar bdInsertar = new BaseDatosInsertar();
               
                  boolean verdad = verificaUsuarioNombre(nombreUs);
                  boolean verdad2 = verificaUsuarioNombreId(Integer.valueOf(id), nombreUs);
               
                  ArrayList listaUsuarios = new ArrayList();
               
                if(verdad){
                   
                    JOptionPane.showMessageDialog(null,"El usuario :'"+nombreUs.toUpperCase()+"' ya existe", "Error", JOptionPane.ERROR_MESSAGE);
                   
                }
                else{
                   
                    if(verdad2){
                       
                        JOptionPane.showMessageDialog(null,"El usuario :'"+nombreUs.toUpperCase()+"' existe con el Cód. empleado: "+id+"", "Error", JOptionPane.ERROR_MESSAGE);
                    }
                    else{
                       
                listaUsuarios.add(id);
                listaUsuarios.add(nombreUs);
                listaUsuarios.add(contrasenaUs);
                listaUsuarios.add(fecha);
               
               bdInsertar.insertarUsuario(listaUsuarios);
                   
                    }
               
                }
               
                }
            else {
   
                JOptionPane.showMessageDialog(null,"Deben de llenarse los campos oblogatorios "
                        + "*- Nombre de Usuario, Contraseña", "Error", JOptionPane.ERROR_MESSAGE);
                //botonNuevo.setEnabled(true);
            }
           
        } catch (NumberFormatException | HeadlessException e) {
           
            System.out.println(e.getMessage());
        }
    }

*********************************************************************************
//VERIFICO SI YA EXISTE *****USUARIOS*******

    public boolean verificaUsuarioNombreId(int empleado, String nombreUsuario){
       
        try {
           
                Class.forName(DRIVER);
           
                try (
                    Connection cn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
                    java.sql.Statement stmt = cn.createStatement();
                     )
                        {

            ResultSet rs =  stmt.executeQuery("select nomUsuario, idEmpleado from logueo where nomUsuario = '"+nombreUsuario+"' and idEmpleado = "+empleado+"");
       
            rs.next();
           
            String nom = rs.getString("nomUsuario");
            int emp = rs.getInt("idEmpleado");
       
                                 
                        //Cierra el Statement
                stmt.close();
                     
                //Cerramos Coneccion
                cn.close();
               
                if(nom.equals(nombreUsuario) && (emp == empleado)){
                   
                    return true;
                   
                }
                else{
                   
                    return false;
               
                }
     
                //Tiramos Mensaje
           //JOptionPane.showMessageDialog(null,"Se ha introducido correctamente la Factura: '"+ id_factura+"' en la base de datos","Information", JOptionPane.INFORMATION_MESSAGE);
           
                        }
       
                     
          }catch(ClassNotFoundException | SQLException e)
        {
           System.out.println("Error verifica usuario y empleado: " +e.getMessage());
           
        return false;
           
        }
     
    }
_________________________________________________________________________________

public boolean verificaUsuarioNombre(String nombreUsuario){
       
        try {
           
                Class.forName(DRIVER);
           
                try (
                    Connection cn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
                    java.sql.Statement stmt = cn.createStatement();
                     )
                        {

             
            ResultSet rs =  stmt.executeQuery("select nomUsuario from logueo where nomUsuario = '"+nombreUsuario+"'");
       
            rs.next();
           
            String nom = rs.getString("nomUsuario");
                                 
                        //Cierra el Statement
                stmt.close();
                     
                //Cerramos Coneccion
                cn.close();
               
                if(nom.equals(nombreUsuario)){
                   
                    return true;
                   
                }
                else{
                   
                    return false;
               
                }
     
                //Tiramos Mensaje
           //JOptionPane.showMessageDialog(null,"Se ha introducido correctamente la Factura: '"+ id_factura+"' en la base de datos","Information", JOptionPane.INFORMATION_MESSAGE);
           
                        }
                             
          }catch(ClassNotFoundException | SQLException e)
        {
           System.out.println("Error verifica usuario: " +e.getMessage());
           
        return false;
           
        }
     
    }