Conectando Aplicação Java Com Banco de Dados

Fala galera!!! \0/
Estou aqui novamente para mostrar à vocês uma coisa excepcional no desenvolvimento em qualquer linguagem 'CONEXÃO COM O BANCO DE DADOS!'. Isso mesmo, hoje vamos aprender como fazer isso de uma forma bem simples. Então vamos lá!
Segue abaixo a Classe de Conexão:
public class Conexao {
static String status = "";
public static Connection getConnection(){
Connection con = null;
try {
Class.forName("com.mysql.jdbc.Driver");     //pega a classe Driver
String url = "jdbc:mysql://localhost/publico?user=root&password=";      //publico é o schema, root o usuario, e no meu caso nao tem senha.
con = DriverManager.getConnection(url);      //conecta ao banco.
status = "Conexão Aberta";         //muda o status para conexão aberta.
} catch (ClassNotFoundException e) {
status = e.getMessage();
} catch (SQLException e) {
status = e.getMessage();
} catch (Exception e){
status = e.getMessage();
}
return con;//retorna a conexao.
}
Agora que já temos a Classe Conexao, podemos começar a ‘brincar’ com nosso banco.
Criarei uma Classe chamada ComandosSql, que terá três métodos. Um para criar uma tabela, um para inserir um registro, e outro para consultar um registro. Segue então abaixo:
public class ComandosSql {
public void criaTabela(Statement stm) throws SQLException{
stm.execute("CREATE table pessoa(" +     //cria a tabela pessoa com os campos
"id_pessoa int auto_increment," +       //pk da tabela, com auto increment
"constraint sq_pessoa primary key(id_pessoa),"+      //sequence da tabela.
"nome char varying(200)," +      //nome da pessoa
"cpf char varying(14)" +       //cpf da pessoa
");");
}
public void inserePessoa(Statement stm, String id_pessoa, String nomePessoa, String cpf) throws SQLException{
stm.execute("insert into pessoa(id_pessoa,nome,cpf) values (" +    //cod sql para inserir um registro em um tabela
"'"+id_pessoa+"'," +    //valor da primary key
"'"+nomePessoa+"'," +    //valor do nome da pessoa
"'"+cpf+"')");     //valor do cpf
}
public void consultaRegistro(Statement stm, String nomePessoa) throws SQLException{
ResultSet resultSet = stm.executeQuery("select f.nome,f.cpf " +     //pega cpf e nome
"from pessoa f " +    //da tabela pessoa
"where f.nome='"+nomePessoa+"'");    //onde nome = nome passado
if(resultSet.next()){    //se tem resultado
System.out.println("Nome: "+resultSet.getString("f.nome")+     //imprime nome
"\nCpf: "+resultSet.getString("cpf"));    //e cpf.
}
}
}
Com a Classe criada, falta apenas executar os métodos, que é o que faremos na classe Main que segue abaixo:
public class Iniciar {
public static void main(String[] args) {
Connection con = Conexao.getConnection();//pega conexao e conecta.
System.out.println(Conexao.status);//imprime estado da conexao
try {
Statement stm = con.createStatement();//instancia um statment
ComandosSql comandosSql = new ComandosSql();//intancia um comandosSql
comandosSql.criaTabela(stm);//cria tabela
comandosSql.inserePessoa(stm,"1","Flavio Mendes", "000.000.000-00");//insere a pessoa
comandosSql.consultaRegistro(stm,"Flavio Mendes");//pesquisa nome.
} catch (SQLException e) {
e.printStackTrace();
}
}
}
É isso ai galera, mais uma dica dada à todos aqueles que seguem este blog e, aos demais que querem aprender um pouco mais sobre esta linguagem...
Abraços!

Comentários

Postagens mais visitadas deste blog

E Esse Tal de Nano Service?

Executar Audio em Java Swing

Validando Email em Java Com e Sem expressão Regular