Banco de dados

8 respostas
leandroageu

Qual o caminho para aprender isto?

package Persistencia;  
  
import java.sql.Connection;  
import java.sql.PreparedStatement;  
import java.sql.ResultSet;  
import java.sql.SQLException;  
import java.sql.Statement;  
import java.util.ArrayList;  
import java.util.List;  
import Modelo.Endereco;  
  
public class EnderecoDAO {  
    public static List <Endereco> leTodos(){  
        List<Endereco> endereco =  
                new ArrayList<Endereco>();  
        try{  
            Connection con = GerenteDeConexao.criaConexao();  
            Statement stm = con.createStatement();  
            ResultSet rs = stm.executeQuery("SELECT * FROM Endereco");  
            endereco = new ArrayList<Endereco>();  
            while(rs.next()){  
                    Endereco ende = new Endereco();  
                    ende.setCod(rs.getInt("cod_end"));  
                    ende.setBairro(rs.getString("bairro_end"));  
                    ende.setCidade(rs.getString("cidade_end"));  
                    ende.setComplemento(rs.getString("comple_end"));  
                    ende.setEstado(rs.getString("estado_end"));  
                    ende.setRua(rs.getString("rua_end"));  
                    endereco.add(ende);  
            }  
        }catch (SQLException e){  
            System.out.println("Erro ao buscar os dados " + e.getMessage());  
        }  
        return endereco;  
    }  
  
     public static List <Endereco> leUm(int cod){  
        List<Endereco> endereco =  
                new ArrayList<Endereco>();  
        try{  
            Connection con = GerenteDeConexao.criaConexao();  
            PreparedStatement stm = con.prepareStatement("SELECT * FROM Endereco where cod_end = ?");  
            stm.setInt(1, cod);  
            ResultSet rs = stm.executeQuery();  
            endereco = new ArrayList<Endereco>();  
            while(rs.next()){  
                    Endereco ende = new Endereco();  
                    ende.setCod(rs.getInt("cod_end"));  
                    ende.setBairro(rs.getString("bairro_end"));  
                    ende.setCidade(rs.getString("cidade_end"));  
                    ende.setComplemento(rs.getString("comple_end"));  
                    ende.setEstado(rs.getString("estado_end"));  
                    ende.setRua(rs.getString("rua_end"));  
                    endereco.add(ende);  
            }  
        }catch (SQLException e){  
            System.out.println("Erro ao buscar os dados " + e.getMessage());  
        }  
        return endereco;  
    }

8 Respostas

R

bem, isso o q?
isso tudo?
o que vc não sabe aí?

antes ele busca o endereco e depois busca o endereco onde tem um código para endereco, consegue ver isto?

cria e contacta, poe endereco como um arraylist, e pega os dados do banco inserindo neste array

leandroageu

eu ate entendi o conceito de classes , abstraçao, polimorfirsmo, herança etc, mas quando entrou banco de dados
nao entendo nada, nao sei quais pacotes importar, sempre são esses? não entendo como o programa se conecta com o banco 0.o

e porque EnderecoDAO?

kapa01

DAO - Data Access Object (Objeto de Acesso a Dados).
No caso essa classe é responsável por fazer o acesso ao banco de dados.
EnderecoDAO - Acesso a base de dados Endereco.
Você sempre vai importar as classes do pacote java.sql e as Classes do pacote modelo.

ctosin

O DAO (Data Access Object) é um design pattern que encapsula o acesso a dados. Se você quer aprender mais sobre ele, recomendo este link: http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html

E se você quer aprender a conectar suas aplicações Java em bancos de dados, recomendo que você aprenda JDBC (pelo menos este exemplo que você postou é baseado em JDBC). JDBC é tranquilo e tem bastante coisa na internet que fala sobre esta API.

Abraço!

R

bem DAO é data acess object… como vc vai acessar os dados…
e eetas coisas as vezes são assim. as fichas vão caindo depois, ou as pecas do quebra cabeca se encaixam com o uso… mas é bom rever conceitos.

basicamente, vc importa pacotes de classes que usam, pois eles precisam do subsidio para funcionar, ou seja as informacoes para ela,estão na importacao.

abstracao é dividir o problema em partes, focalizar no necessário,

heranca, vc vai usar recursos de outra classe por exemplo ou vai oferecer recursos, se for pai ou filha.
métodos e atributos (ou variavéis)

classes, são os programas aí descritos. vc pode instanciar classes com informacoes importantes, ou ter uma classe principal com o método main, que vai fazer funcionar tudo.

esta classe enderecoDAO tem a funcao de listar enderecos, veja pelo select… com codigo de endereco ou sem…

mais ou menos isto…

estes conceitos são fáceis de pegar, busque uma apostila básica na internet mesmo. não mais que 1 hora vc pega tudo.

o polimorfismo, por exemplo , vc usa um método com mesmo nome, mas de acordo com os parametros que ele recebe, ele reage de uma forma diferente.

olha um link bacana:
http://www.linux.ime.usp.br/~willian/java1.pdf

U

ctosin:
O DAO (Data Access Object) é um design pattern que encapsula o acesso a dados. Se você quer aprender mais sobre ele, recomendo este link: http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html

E se você quer aprender a conectar suas aplicações Java em bancos de dados, recomendo que você aprenda JDBC (pelo menos este exemplo que você postou é baseado em JDBC). JDBC é tranquilo e tem bastante coisa na internet que fala sobre esta API.

Abraço!


Olá tudo bem,aproveitando o topico amigo um desenvolvedor java ee é obrigado a usar ou aprender todos esses Core j2ee Patterns que o senhor citou?.obrigado

ctosin

Obrigado você não é, mas é recomendado que você conheça os principais, como DAO, front controller e session facade, por exemplo. Os padrões de projeto auxiliam na criação de boas arquiteturas de aplicações. E isto não vale só para Java EE. Existem também outros padrões de propósito geral, como os sugeridos pelo GoF (Gang of Four). Recomendo que leia sobre eles também.

Abraço!

leandroageu

Vlw pelos posts galera

Criado 5 de dezembro de 2011
Ultima resposta 5 de dez. de 2011
Respostas 8
Participantes 5