quinta-feira, 19 de abril de 2012

19.04.2012 - UsuarioCtrl

package br.com.ipa.usuario;

import br.com.ipa.dao.*;
import java.util.*;

public class UsuarioCtrl {

    private static synchronized int getProximoID() throws Exception {        
        RecordSet rs = BD.executeQuery("SELECT MAX(id)+1 FROM usuarios");
        if (!rs.next()) {
            return 0;
        }
        return rs.getInt(1);
    }

    public static synchronized void incluir(Usuario u) throws Exception {
        u.setId(getProximoID());
        String sql = "INSERT INTO usuarios VALUES (" + 
                u.getId().toString() + ", " + 
                "'" + u.getNome() + "', " + 
                "'" + u.getSenha() + "', " + 
                (u.getAdmin()?"1":"0") + ")";
        BD.execute(sql);
    }

    public static synchronized void excluir(Usuario u) throws Exception {
        String sql = "DELETE FROM usuarios WHERE id = " + u.getId();
        BD.execute(sql);
    }

    public static synchronized void alterar(Usuario u) throws Exception {
        String sql = "UPDATE usuarios SET " + 
                "nome = '" + u.getNome() + "', " + 
                "senha = '" + u.getSenha() + "', " + 
                "admin = " + (u.getAdmin()?"1":"0") + " " +
                "WHERE id = " + u.getId().toString();
        BD.execute(sql);
    }

    public static synchronized Usuario carregar(Integer id) throws Exception {
        RecordSet rs = BD.executeQuery("SELECT * FROM usuarios WHERE id=" + id.toString());
        if (!rs.next()) {
            return null;
        }

        Usuario usuario = new Usuario();
        usuario.setId(rs.getInt("id"));
        usuario.setNome(rs.getString("nome"));
        usuario.setSenha(rs.getString("senha"));
        usuario.setAdmin(rs.getInt("admin") == 1);
        return usuario;
    }

    public static synchronized ArrayList<Usuario> listar() throws Exception {
        ArrayList usuarios = new ArrayList();
        RecordSet rs = BD.executeQuery("SELECT * FROM usuarios");
        while (rs.next()) {
            Usuario usuario = new Usuario();
            usuario.setId(rs.getInt("id"));
            usuario.setNome(rs.getString("nome"));
            usuario.setSenha(rs.getString("senha"));
            usuario.setAdmin(rs.getInt("admin") == 1);
            usuarios.add(usuario);
        }
        return usuarios;
    }
}

Nenhum comentário:

Postar um comentário