Advertisement
Guest User

Untitled

a guest
Apr 5th, 2016
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.81 KB | None | 0 0
  1. public class Conexao {
  2.  
  3. private static final String USUARIO = "root";
  4. private static final String SENHA = "";
  5. private static final String URL = "jdbc:mysql://127.0.0.1:3306/meubanco";
  6. private static final String DRIVER = "com.mysql.jdbc.Driver";
  7.  
  8. // Conectar ao banco
  9. public static Connection abrir() throws Exception {
  10. // Registrar o driver
  11. Class.forName(DRIVER);
  12. // Capturar a conexão
  13. Connection conn = DriverManager.getConnection(URL, USUARIO, SENHA);
  14. // Retorna a conexao aberta
  15. return conn;
  16.  
  17.  
  18. }
  19.  
  20. }
  21.  
  22. public class Cliente {
  23.  
  24. private Integer codigoCliente;
  25. private String nomeCliente;
  26. private Integer idadeCliente;
  27.  
  28. public Integer getCodigoCliente() {
  29. return codigoCliente;
  30. }
  31.  
  32. public void setCodigoCliente(Integer codigoCliente) {
  33. this.codigoCliente = codigoCliente;
  34. }
  35.  
  36. public String getNomeCliente() {
  37. return nomeCliente;
  38. }
  39.  
  40. public void setNomeCliente(String nomeCliente) {
  41. this.nomeCliente = nomeCliente;
  42. }
  43.  
  44. public Integer getIdadeCliente() {
  45. return idadeCliente;
  46. }
  47.  
  48. public void setIdadeCliente(Integer idadeCliente) {
  49. this.idadeCliente = idadeCliente;
  50. }
  51.  
  52. }
  53.  
  54. public class ClienteDAO {
  55.  
  56. public List<Cliente> buscar(Cliente c) throws Exception {
  57. /* Define a SQL */
  58. StringBuilder sql = new StringBuilder();
  59. sql.append("SELECT cod_cliente, nome_cliente, idade_cliente ");
  60. sql.append("FROM tabela_cliente ");
  61. sql.append("WHERE nome_cliente LIKE ? ");
  62. sql.append("ORDER BY nome_cliente ");
  63.  
  64. /* Abre a conexão que criamos o retorno é armazenado na variavel conn */
  65. Connection conn = Conexao.abrir();
  66.  
  67. /* Mapeamento objeto relacional */
  68. PreparedStatement comando = conn.prepareStatement(sql.toString());
  69. comando.setString(1, "%" + c.getNomeCliente()+ "%");
  70.  
  71. /* Executa a SQL e captura o resultado da consulta */
  72. ResultSet resultado = comando.executeQuery();
  73.  
  74. /* Cria uma lista para armazenar o resultado da consulta */
  75. List<Cliente> lista = new ArrayList<Cliente>();
  76.  
  77. /* Percorre o resultado armazenando os valores em uma lista */
  78. while (resultado.next()) {
  79. /* Cria um objeto para armazenar uma linha da consulta */
  80. Cliente linha = new Cliente();
  81. linha.setCodigoCliente(resultado.getInt("cod_cliente"));
  82. linha.setNomeCliente(resultado.getString("nome_cliente"));
  83. linha.setIdadeCliente(resultado.getInt("idade_cliente"));
  84. /* Armazena a linha lida em uma lista */
  85. lista.add(linha);
  86. }
  87.  
  88. /* Fecha a conexão */
  89. resultado.close();
  90. comando.close();
  91. conn.close();
  92.  
  93. /* Retorna a lista contendo o resultado da consulta */
  94. return lista;
  95. }
  96.  
  97. }
  98.  
  99. public class ClienteTableModel extends AbstractTableModel {
  100. /* Lista para armazenar os cabeçalhos da tabela */
  101.  
  102. private Vector colunas;
  103.  
  104. /* Lista para armazenar os dados da tabela */
  105. private Vector linhas;
  106.  
  107. public ClienteTableModel() {
  108. /* Definição das colunas da tabela */
  109. colunas = new Vector();
  110. colunas.add("Código");
  111. colunas.add("Nome");
  112. colunas.add("Idade");
  113.  
  114. /* Definição dos dados da tabela */
  115. linhas = new Vector();
  116. }
  117.  
  118. public int getRowCount() {
  119. /* Captura o total de linhas da tabela */
  120. int totalLinhas = linhas.size();
  121.  
  122. /* Retorna o total de linhas */
  123. return totalLinhas;
  124. }
  125.  
  126. public int getColumnCount() {
  127. /* Captura o total de colunas da tabela */
  128. int totalColunas = colunas.size();
  129.  
  130. /* Retorna o total de colunas */
  131. return totalColunas;
  132. }
  133.  
  134. public String getColumnName(int coluna) {
  135. /* Captura o nome da coluna */
  136. String nomeColuna = (String) colunas.get(coluna);
  137.  
  138. /* Retorna o nome da coluna */
  139. return nomeColuna;
  140. }
  141.  
  142. public Object getValueAt(int linha, int coluna) {
  143. /* Captura o registro informado */
  144. Vector registro = (Vector) linhas.get(linha);
  145.  
  146. /* Dentro do registro captura a coluna selecionada */
  147. Object dado = registro.get(coluna);
  148.  
  149. /* Retorna o valor capturado */
  150. return dado;
  151. }
  152.  
  153. public void adicionar(List<Cliente> lista) {
  154. /* Reinicializa os dados da tabela */
  155. linhas = new Vector();
  156.  
  157. /* Percorre a lista copiando os dados para a tabela */
  158. for (Cliente d : lista) {
  159. Funcionario f = new Funcionario();
  160. /* Cria uma linha da tabela */
  161. Vector<Object> linha = new Vector();
  162. linha.add(d.getCodigoCliente());
  163. linha.add(d.getNomeCliente());
  164. linha.add(d.getIdadeCliente());
  165. /* Adiciona a linha a tabela */
  166. linhas.add(linha);
  167. }
  168. /* Atualiza a tabela */
  169. fireTableDataChanged();
  170. }
  171.  
  172. }
  173.  
  174. public NewJFrame() {
  175. initComponents();
  176. }
  177.  
  178. public void atualizar(){
  179. try{
  180. /* Criação do modelo */
  181. Cliente d = new Cliente();
  182.  
  183. /* Criação do DAO */
  184. ClienteDAO dao = new ClienteDAO();
  185. List<Cliente> lista = dao.buscar(d);
  186.  
  187. /* Captura o modelo da tabela */
  188. ClienteTableModel modelo = (ClienteTableModel)jTable1.getModel();
  189.  
  190. /* Copia os dados da consulta para a tabela */
  191. modelo.adicionar(lista);
  192.  
  193. } catch (Exception ex) {
  194. ex.printStackTrace();
  195. JOptionPane.showMessageDialog(null, "Erro ao tentar buscar um Cliente");
  196. }
  197. }
  198.  
  199. private void formWindowOpened(java.awt.event.WindowEvent evt) {
  200.  
  201. atualizar();
  202.  
  203. //Opcional
  204. setLocationRelativeTo(null);
  205. setResizable(false);
  206.  
  207. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement