Documentos relacionados
Projeto webservicejax

public class Funcionario implements Comparable<Funcionario>{



DATA ACCESS OBJECT (DAO)

Exercícios de fixação: Listas

Lista de exercícios I - RESPOSTAS Servlets e banco de dados

O JUnit permite a realização de testes de unidades, conhecidos como "caixa branca", facilitando assim a correção de métodos e objetos.

Java - Conexão ao Banco de Dados usando JDBC

Web Services. EclipseSDK/DB2 Construindo/Consumindo Serviços

De forma simples, para a execução de comandos SQL com JDBC, precisa-se da instancia de três classes Java. São elas: Nome da classe Função

Funcionamento da Aplicação. Simulações do funcionamento. Simulação SAC

Banco de dados POO Márcio Delamaro. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP

Classe Produto e Calculo de Produto

Classe Aluno e Disciplina, Validação JUnit, gravação no MySql

Classe Funcionario tem Endereco

Faça Fácil Proficy Historian e SQL Linked Server

PROFICY HISTORIAN E SQL LINKED SERVER

Faça Fácil. Proficy Historian e SQL Linked Server

Agenda. Instalação e configuração. Processamento de comandos SQL com JDBC. Driver JDBC Criação da classe de conexão

Conexão do Banco de Dados localhost

Como criar um banco de dados usando o mysql

JDBC. Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos.

Banco de Dados. Banco de Dados

Drive MySql de conexão para Eclipse

Padrões de Projeto e Persistência com DAO

Java na WEB Banco de Dados


Modulo 8 - Padrão DAO (Dta Access Object) Prof. Sheila Cáceres

Banco de Dados. Banco de Dados. Alcides Pamplona Alcides Pamplona Linguagem de Programação CESBD 2010

Código-Fonte da Prática 02

Listando, gravando, alterando e excluindo registro do banco de dados com JSP

Projeto Final Curso de Java Básico

JAVA COM BANCO DE DADOS PROFESSORA DANIELA PIRES

Programação Orientada a Objetos II

JavaServer Faces JSF

Programação Orientada a Objetos JDBC Java Database Connectivity

Java DataBase Connectivity - JDBC. Ramon Lopes Embaixador de Campus Sun - UFBA

Persistência de Objetos no SGBD PostgreSQL, Utilizando as APIs: JDBC, JDK, Swing e Design Patteners DAO.

Unidade 12: Programação de Banco de Dados com Java Prof. Daniel Caetano

Classes e Objetos. Prof. Fernando V. Paulovich 9 de agosto de 2010

PROJETO ECLIPSE: Estrutura do projeto: (Dynamic Web Project) LIBS: Java WebDeveloper. Prof. Edson Belém

JDBC com Banco de Dados Standalone

SISTEMA EXPERIMENTALL 15/11/2009. Olá! A partir de agora vamos conhecer a IDE NetBeans efetuando um micro projeto swing.

Módulo 5 - JDBC java.sql - Conexão com Banco de Dados

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 9- Introdução ao JDBC


Persistência de Classes em Tabelas de Banco de Dados

Acesso a banco de dados

API JDBC. Paulo Ricardo Lisboa de Almeida. 1 Universidade Positivo

Vamos falar de Hibernate?

JDBC - Java Data Base Connectivity

JDBC Acessando Banco de Dados

Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos

Estrutura do Projeto - Trabalhando com Banco de Dados

Integrando Java com Banco de Dados

Implementar um exemplo de relacionamento entre classes um para muitos (1:N) e um para um (1:1). Sistema para uma Promotora de Evento Agenda Anual

POO Programação Orientada a Objetos

Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento

Projeto Java Web (WebService) LIBS:

PERSISTÊNCIA EM JAVA. Introdução. Conexão a banco de dados através do driver JDBC UNIDADEE

Fernando Freitas Costa. Pós-Graduando em Gestão e Docência Universitária. blog.fimes.edu.br/fernando nando@fimes.edu.br

CONEXÃO JAVA - BANCO DE DADOS

Linguagem de Programação Orientada a Objeto Coleções

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Departamento de Computação Curso de Análise e Desenvolvimento de Sistemas Modelagem Conceitual de Dados

Aula Prática JBCD - Introdução

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Manipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro Maio/ 2015

Importar e Exportar Dados

JDBC. Prof. Márcio Bueno

O JasperReports Studio é uma ferramenta de software que oferece um ambiente visual para criar relatórios para a plataforma Java. É open source.

Herança. Prof. Fernando V. Paulovich 23 de agosto de 2010

JDBC. Java DataBase Connectivity

Java JDBC Aplicação Java com Acesso a um SGBD. Ricardo Terra (rterrabh [at] gmail.com) Java JDBC Maio, 2010

Java & Bancos de Dados Adaptado de Slides da Universidade Salgado de Oliveira Goiânia

Notas de Aula 09: Tratamento de exceções

Desenvolvimento para Web em Java. Profa Andréa Schwertner Charão DLSC/CT/UFSM Lamarck Heinsch Mestrando PPGI/CT/UFSM

Linguagens de Programação

Banco de Dados. -Aprendendo conceitos -Usando o SQL Conf para: -Conectar no banco de dados -Criar, alterar, excluir e consultar estruturas de tabelas

Programação Orientada a Objetos II

Interfaces POO. Prof. Marcio Delamaro

SISTEMA EXPERIMENTALL 15/11/2009. Olá a Todos!

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas

Programação Orientada a Objetos

Introdução ao Hibernate. Hibernate Mapeamento com Anotação. Projeto Desktop Uma Classe. Objetivo. Programas Utilizados

Manipulação de Banco de Dados com Java 1. Objetivos

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan

Tipos, Literais, Operadores

Tipos, Literais, Operadores

Para criar um projeto no ambiente eclipse utiliza-se o menu File, New e Project como ilustra a Figura 1.

Linguagem de Programação II Importando Classes/Pacotes

Banco de Dados I Introdução SQL

Conexão com Banco de Dados

Autenticação e Autorização

INTRODUÇÃO. No entanto, o que pode ser considerado um produto (resultado) da criação de BDs?

JPA Java Persistence API. Prof. Ramon Chiara

MANIPULAÇÃO DE BANCO DE DADOS UTILIZANDO INTERFACE GRÁFICA

JDBC Tópicos avançados de acesso a base de dados relacional

Programação Orientada a Objetos (utilizando C#) Professor Emiliano S. Monteiro Versão 12 Out/2016.

Tratamento de Erros. Sérgio Luiz Ruivace Cerqueira

Transcrição:

Criar um projeto ->. Criar no pacote entity a classe Funcionario com os atributos(idfuncionario, nome, sexo, ativo, salario). Criar construtor vazio, o construtor cheio, o tostring com todos os atributos e os getters e setters. package entity; public class Funcionario { private Integer idfuncionario; private String nome; private String sexo; private Boolean ativo; private Double salario; public Funcionario() { public Funcionario(Integer idfuncionario, String nome, String sexo, Boolean ativo, Double salario) { super(); this.idfuncionario = idfuncionario; this.nome = nome; this.sexo = sexo; this.ativo = ativo; this.salario = salario; @Override public String tostring() { return "Funcionario [idfuncionario=" + idfuncionario + ", nome=" + nome + ", sexo=" + sexo + ", ativo=" + ativo + ", salario=" + salario + "]"; public Integer getidfuncionario() { return idfuncionario; public void setidfuncionario(integer idfuncionario) { this.idfuncionario = idfuncionario; public String getnome() { return nome; public void setnome(string nome) { 1

this.nome = nome; public String getsexo() { return sexo; public void setsexo(string sexo) { this.sexo = sexo; public Boolean getativo() { return ativo; public void setativo(boolean ativo) { this.ativo = ativo; public Double getsalario() { return salario; public void setsalario(double salario) { this.salario = salario; Para adicionar a biblioteca de conexão com o banco de dadosmysqlconnector-java, clicar com o botão direito no projeto, depois em Properties. 2

Clicar em Java Build Path e Add External JARs. Indicar o caminho onde se encontra a biblioteca do mysql. 3

Depois de adicionar a lib, clicar em Apply e depois OK. Indicando a lib no projeto. 4

Criando o banco de dados: Para criar o script do banco de dados, criar um pacote chamado persistence. Depois clicar no pacote, new e Other. Depois SQL Development, SQL File e Next. Em File name, colocar o nome do script e clicar em Next. Depois de criado o arquivo com o SQL do banco. Digitar os comando para criação do banco. Comandos: drop database if exists aula; create database aula; use aula; Explicação: Apagar o banco se já existir com o nome de aula. Criar um banco com o nome de aula. Usar o banco aula. drop database if exists aula; create database aula; use aula2; Comandos: create table primary key varchar not null enum double int Explicação: Criar a tabela com nome de funcionário. Significa que o campo será a chave primária. Siginifica que o campo é uma palavra com 35 caracteres. O campo não poderá ser nulo, vazio. Significa que o campo só tem duas opções m ou f. Significa que o campo é do tipo Double, valor. Significa que o campo é do tipo inteiro. create table funcionario(idfuncionario int primary key, nome varchar (35) not null, sexo enum ('m','f') not null, salario double, ativo int); Comandos: Explicação: 5

desc Comando para dar a descrição da tabela. insert into nome da Insere na tabela funcionário os valores tabela values (...) select * from nome da Comando que seleciona todos os campos tabela da tabela funcionário. select Seleciona * Todos from tabela Se refere a tabela desejada. desc funcionario; insert into funcionario values (100,'jose','m',1000,0); insert into funcionario values (101,'stuart','m',1800,1); insert into funcionario values (102,'carla','f',7800,1); select * from funcionario; No banco... 6

Criar um pacote chamado persistence e nele criar uma classe chamada Dao. Essa classe é destinada para conexão ao banco de dados. DAO significa Data Access Object. package persistence; import java.sql.callablestatement; import java.sql.connection; import java.sql.drivermanager; import java.sql.preparedstatement; import java.sql.resultset; public class Dao { Connection con; PreparedStatement stmt; ResultSet rs; CallableStatement call; public void open() throws Exception{ Class.forName("com.mysql.jdbc.Driver"); con = DriverManager. 7

getconnection("jdbc:mysql://localhost:3306/aula","root","coti" ); public void close() throws Exception{ con.close(); Criar o método main para testar se a classe está se conectando ao banco. Dentro do bloco try e catch chamar a classe e criar o seu objeto e dar espaço de memória. Através do objeto abrir e depois fechar. Imprimir a mensagem se conseguiu conectar. Se não conseguir, vai para o catch e imprime a mesnagemd de erro. public static void main(string[] args) { try { Dao d = new Dao(); d.open(); d.close(); System.out.println("Banco de Dados OK!"); catch (Exception e) { System.out.println("ERROR: " + e.getmessage()); No console... Banco de Dados OK! Criar a classe FuncionarioDao para manipular o funcionário dentro do banco. package persistence; import java.util.arraylist; import java.util.list; import entity.funcionario; 8

public class FuncionarioDao extends Dao { Criamos o método de criação do funcionário, passamos a classe Funcionario e objeto como parâmetros. Chamamos o método para abrir o banco. Chamamos a conexão com a tabela, depois a conexão com o banco através do método de acesso a tabela passando os parâmetros SQL de inserção dos dados do funcionário, onde as interrogações serão os dados a serem passados. public void create(funcionario f)throws Exception{ open(); stmt = con. preparestatement("insert into funcionario values (?,?,?,?,?)"); Em seguida passamos a conexão com a tabela e setamos o tipo do dados que será recebido, nos parâmetros indicamos a posição da coluna e o objeto de funcionário com o método get referente ao campo que será inserido. Assim será feito para todos os dados. stmt.setint(1,f.getidfuncionario()); stmt.setstring(2,f.getnome()); stmt.setstring(3,f.getsexo()); stmt.setdouble(4,f.getsalario()); No parâmetro referente se o funcionário está ativo, colocamos que ele receberá 1 ou 0, será ativo ou não. Fazemos a conexão com a tabela novamente, através do método execute, executamos as ações de cima. Ainda usando a conexão, fechamos a tabela e por fim, fechamos o banco. stmt.setint(5, (f.getativo())?1:0); stmt.execute(); stmt.close(); close(); 9

Criamos o método para buscar todos os funcionários cadastrados de uma vez através de uma lista. Abrimos o banco. Conectamos com a tabela e passamos o parâmetro de busca SQL de todos os registros do banco. Através do rs fazemos a consulta no banco, conectamos com a tabela e executamos a pesquisa. public List<Funcionario> findall() throws Exception{ open(); stmt = con.preparestatement("select * from funcionario"); rs = stmt.executequery(); Criamos a lista de funcionário través da interface List, criamos o objeto lista e damos espaço de memória para trabalhar. Em seguida, enquanto houver registros preenchemos com os dados do funcionário. Para isso, chamamos a classe e criamos um objeto e damos espaço de memória. List<Funcionario> lista = new ArrayList<Funcionario>(); while(rs.next()){ Funcionario f = new Funcionario(); Depois, pelo objeto de funcionário setamos o campo e através da consulta, pelo rs, indicamos o tipo de campo da referencia, seja passando a posição da coluna onde está o dado esperado ou passando o nome da coluna. Passamos campo a campo os dados a serem trazidos do banco. No fim, após passar todos os campos, chamamos o objeto lista e o método para adicionar, tendo como parâmetro o objeto de funcionário. Fechamos o banco e retornamos a lista já preenchida com as informações. f.setidfuncionario( rs.getint(1)); f.setnome( rs.getstring(2)); f.setsexo( rs.getstring("sexo")); f.setsalario(rs.getdouble(4)); f.setativo(( rs.getint(5) ==1 )?true:false); lista.add(f); close(); return lista; 10

No método de teste main, abrimos o bloco try e catch e detro do try chamamos a inteface da lista com a classe Funcionário como parâmetro e criamos um objeto chamado resp. Chamamos a classe FuncionarioDao e o método de busca findall. No loop do for, passamos a classe Funcionario e o objeto f para preencher o objeto resp. Ou seja, vai fazer a busca no banco e enquanto houver registros, em seguida imprime o objeto cheio com os resultados. Imprime também a mensagem. Se cair no catch, der erro, imprime a mensagem de erro e com o método printsacktrace exibe o erro mais detalhadamente. public static void main(string[] args) { try { List <Funcionario> resp = new FuncionarioDao().findAll(); for (Funcionario f : resp){ System.out.println(f); System.out.println("Funcionario listado com sucesso!"); catch (Exception e) { System.out.println("ERROR: " + e.getmessage()); e.printstacktrace(); No console.. Funcionario [idfuncionario=100, nome=jose, sexo=m, ativo=false, salario=1000.0] Funcionario [idfuncionario=101, nome=stuart, sexo=m, ativo=true, salario=1800.0] Funcionario [idfuncionario=102, nome=carla, sexo=f, ativo=true, salario=7800.0] Funcionario listado com sucesso!

No banco... 12