Pessoal , to tentando fazer um CRUD aqui sendo que o mesmo quando passo os valores estão passando como null, teria como alguém me ajudar ? Tem várias classes eu sei, também ve se tem algum POG ai ahahah pra me ajudar sou novo na área e ainda tenho duvidas :/. As classes tem 4 constructores pq foi oq o professor pediu no trabalho dele. Tirando o fato de tudo aparecer NULL o resto ta pegando
Grato …
[code]package exec;
import java.util.Scanner;
import persistence.ClienteDAO;
import persistence.FuncionarioDAO;
import entity.Cliente;
import entity.Endereco;
import entity.Funcionario;
public class Executavel {
public static void main(String[] args) {
Cliente c = null;
Funcionario f = null;
UtilCliente uc = new UtilCliente();
UtilFuncionario uf = new UtilFuncionario();
ClienteDAO cdao = new ClienteDAO();
FuncionarioDAO fdao = new FuncionarioDAO();
Integer id = 0;
boolean continuar = true;
while (continuar) {
Menu.menu();
Scanner input = new Scanner(System.in);
Integer opc = 0;
try {
opc = input.nextInt();
input = null;
} catch (Exception e) {
System.out.println(“Opção invalidade.”);
e.printStackTrace();
}
switch (opc) {
case 1:
uc.cadastrarCliente();
c = new Cliente();
cdao.cadastrar(c);
System.out.println("Cliente Cadastrado com Sucesso !");
break;
case 2:
uf.cadastrarFuncionario();
f = new Funcionario();
fdao.adicionar(f);
System.out.println("Funcionario Cadastrado com Sucesso !");
break;
case 3:
System.out.println("Digite o codigo do cliente para delecao.");
id = input.nextInt();
cdao.remover(id);
break;
case 4:
System.out
.println("Digite o codigo do funcionario para delecao");
id = input.nextInt();
fdao.remover(id);
break;
case 5:
if(cdao.vazia()){
System.out.println("Lista Vazia.");
}
cdao.listar();
break;
case 6:
if(fdao.vazia()){
System.out.println("Lista vazia.");
}
fdao.listar();
break;
case 7:
if (cdao.vazia()) {
System.out.println("Lista Vazia");
}
id = input.nextInt();
c = cdao.localizar(id);
if (c != null) {
System.out.println(c);
} else {
System.out.println("\nPessoa não encontrada.");
}
Menu.menuAlterarCliente();
System.out.println("Digite a opção que deseja alterar.");
int escolha = input.nextInt();
switch (escolha) {
case 1:
System.out.println("Digite o nome novo.");
String nome = input.nextLine();
c.setNome(nome);
break;
case 2:
System.out.println("Digite a data de nascimento correta.");
String data = input.nextLine();
c.setDataNascimento(data);
break;
case 3:
System.out.println("Digite o Endereco correto.");
Endereco e = new Endereco();
c.setEndereco(e);
break;
case 4:
System.out.println("Digite a profissão correta.");
String profissao = input.nextLine();
c.setProfissao(profissao);
break;
default:
System.out.println("Opcao invalida, tente novamente.");
break;
}
break;
case 8:
if (fdao.vazia()) {
System.out.println("Lista Vazia");
}
id = input.nextInt();
f = fdao.localizar(id);
if (f != null) {
System.out.println(f);
} else {
System.out.println("\nPessoa não encontrada.");
}
Menu.menuAlterarFuncionario();
System.out.println("Digite a opção que deseja alterar.");
int opcao = input.nextInt();
switch (opcao) {
case 1:
System.out.println("Digite o nome do funcionario.");
String nome = input.nextLine();
f.setNome(nome);
break;
case 2:
System.out
.println("Digite a data de nascimento do funcionario");
String dataNasc = input.nextLine();
f.setDataNascimento(dataNasc);
break;
case 3:
System.out.println("Digite a data de admissao do funcionario.");
String dataAdm = input.nextLine();
f.setDataAdmissao(dataAdm);
break;
default:
System.out.println("Valor incorreto, digite novamente.");
break;
}
break;
case 9:
System.out.println("Digite 1 para alterar o salário e 2 para promover o funcionario.");
if(fdao.vazia()){
System.out.println("Lista Vazia");
}
System.out.println("Digite a matricula do funcionario.");
int mat = input.nextInt();
f = fdao.localizar(mat);
if(f != null){
System.out.println(f);
}else{
System.out.println("Matricula errada.");
}
int cod = input.nextInt();
switch (cod) {
case 1:
System.out.println("Digite o valor do reajuste em % ( somente numero ): ");
double reajuste = input.nextDouble();
f.reajusteSalario(reajuste);
break;
case 2:
System.out.println("Digite o novo cargo do funcionario: ");
String novoCargo = input.nextLine();
f.promover(novoCargo);
break;
default:
System.out.println("Opção invalida.");
break;
}
// if(cod == 1){
// System.out.println(“Digite o valor do reajuste em % ( somente numero ): “);
// double reajuste = input.nextDouble();
// f.reajusteSalario(reajuste);
// }else if(cod ==2)
// break;
case 0:
continuar = false;
break;
default:
System.out
.println(”\nValor incorreto, favor digitar novamente !\n”);
break;
}
}
}
}
[/code]
[code]package entity;
public class Cliente extends Pessoa {
private Integer codigo;
private String profissao;
private Endereco endereco;
public Cliente(String nome, String dataNascimento, Endereco endereco,
Integer codigo, String profissao) {
super(nome, dataNascimento, endereco);
this.codigo = codigo;
this.profissao = profissao;
}
public void Cadastrar(String nome, String dataNascimento, Endereco endereco,
Integer codigo, String profissao) {
this.codigo = codigo;
this.profissao = profissao;
}
public Cliente() {
// TODO Auto-generated constructor stub
}
public Integer getCodigo() {
return codigo;
}
public void setCodigo(Integer codigo) {
this.codigo = codigo;
}
public String getProfissao() {
return profissao;
}
public void setProfissao(String profissao) {
this.profissao = profissao;
}
public Endereco getEndereco() {
return endereco;
}
public void setEndereco(Endereco endereco) {
this.endereco = endereco;
}
public Cliente(Integer codigo) {
super();
this.codigo = codigo;
}
public Cliente(Integer codigo, String profissao) {
super();
this.codigo = codigo;
this.profissao = profissao;
}
@Override
public String toString() {
return "[Codigo: "+this.codigo+" Nome:"+getNome()+" Data de Nascimento:"+getDataNascimento()+" Profissao:"+this.profissao+" Endereco:"+endereco;
}
}
[/code]
[code]package entity;
public class Funcionario extends Pessoa{
private Integer matricula;
private String cargo;
private Double salario;
private String dataAdmissao;
public Funcionario() {
// TODO Auto-generated constructor stub
}
public Funcionario(String nome, String dataNascimento, Endereco endereco,
Integer matricula, String cargo, Double salario, String dataAdmissao) {
super(nome, dataNascimento, endereco);
this.matricula = matricula;
this.cargo = cargo;
this.salario = salario;
this.dataAdmissao = dataAdmissao;
}
public Funcionario(Integer matricula, String cargo, Double salario) {
super();
this.matricula = matricula;
this.cargo = cargo;
this.salario = salario;
}
public Funcionario(Integer matricula, String dataAdmissao) {
super();
this.matricula = matricula;
this.dataAdmissao = dataAdmissao;
}
public void Cadastrar(String nome, String dataNascimento, Endereco endereco,
Integer matricula, String cargo, Double salario, String dataAdmissao) {
//super(nome, dataNascimento, endereco);
this.matricula = matricula;
this.cargo = cargo;
this.salario = salario;
this.dataAdmissao = dataAdmissao;
}
public Integer getMatricula() {
return matricula;
}
public void setMatricula(Integer matricula) {
this.matricula = matricula;
}
public String getCargo() {
return cargo;
}
public void setCargo(String cargo) {
this.cargo = cargo;
}
public Double getSalario() {
return salario;
}
public void setSalario(Double salario) {
this.salario = salario;
}
public String getDataAdmissao() {
return dataAdmissao;
}
public void setDataAdmissao(String dataAdmissao) {
this.dataAdmissao = dataAdmissao;
}
public Double reajusteSalario (Double percentual){
this.salario += this.salario*(percentual/100);
return this.salario;
}
public String promover(String novoCargo){
this.cargo = novoCargo;
return novoCargo;
}
}
[/code]
[code]package entity;
public class Endereco {
private String tipoLogradouro;
private String logradouro;
private Integer numero;
private String complemento;
private String bairro;
private String cidade;
private String estado;
public Endereco() {
// TODO Auto-generated constructor stub
}
public String getTipoLogradouro() {
return tipoLogradouro;
}
public void setTipoLogradouro(String tipoLogradouro) {
this.tipoLogradouro = tipoLogradouro;
}
public String getLogradouro() {
return logradouro;
}
public void setLogradouro(String logradouro) {
this.logradouro = logradouro;
}
public Integer getNumero() {
return numero;
}
public void setNumero(Integer numero) {
this.numero = numero;
}
public String getComplemento() {
return complemento;
}
public void setComplemento(String complemento) {
this.complemento = complemento;
}
public String getBairro() {
return bairro;
}
public void setBairro(String bairro) {
this.bairro = bairro;
}
public String getCidade() {
return cidade;
}
public void setCidade(String cidade) {
this.cidade = cidade;
}
public String getEstado() {
return estado;
}
public void setEstado(String estado) {
this.estado = estado;
}
public Endereco(String tipoLogradouro, String logradouro, Integer numero,
String complemento, String bairro, String cidade, String estado) {
this.tipoLogradouro = tipoLogradouro;
this.logradouro = logradouro;
this.numero = numero;
this.complemento = complemento;
this.bairro = bairro;
this.cidade = cidade;
this.estado = estado;
}
public void Cadastrar(String tipoLogradouro, String logradouro, Integer numero,
String complemento, String bairro, String cidade, String estado) {
this.tipoLogradouro = tipoLogradouro;
this.logradouro = logradouro;
this.numero = numero;
this.complemento = complemento;
this.bairro = bairro;
this.cidade = cidade;
this.estado = estado;
}
}
[/code]
[code]package entity;
public abstract class Pessoa {
private String nome;
private String dataNascimento;
private Endereco endereco;
public Pessoa() {
// TODO Auto-generated constructor stub
}
public Pessoa(String nome, String dataNascimento, Endereco endereco) {
this.nome = nome;
this.dataNascimento = dataNascimento;
this.endereco = endereco;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getDataNascimento() {
return dataNascimento;
}
public void setDataNascimento(String dataNascimento) {
this.dataNascimento = dataNascimento;
}
public Endereco getEndereco() {
return endereco;
}
public void setEndereco(Endereco endereco) {
this.endereco = endereco;
}
}
[/code]
[code]package entity;
public abstract class Pessoa {
private String nome;
private String dataNascimento;
private Endereco endereco;
public Pessoa() {
// TODO Auto-generated constructor stub
}
public Pessoa(String nome, String dataNascimento, Endereco endereco) {
this.nome = nome;
this.dataNascimento = dataNascimento;
this.endereco = endereco;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getDataNascimento() {
return dataNascimento;
}
public void setDataNascimento(String dataNascimento) {
this.dataNascimento = dataNascimento;
}
public Endereco getEndereco() {
return endereco;
}
public void setEndereco(Endereco endereco) {
this.endereco = endereco;
}
}
[/code]
[code]package persistence;
import java.util.HashMap;
import entity.Cliente;
public class ClienteDAO {
private HashMap<Integer, Cliente> clientes;
public ClienteDAO() {
clientes = new HashMap<Integer, Cliente>();
}
public void cadastrar(Cliente cliente){
clientes.put(cliente.getCodigo(), cliente);
}
public Cliente localizar(int id){
if(clientes.containsKey(id)){
return clientes.get(id);
}return null;
}
public boolean remover(int id){
if(this.localizar(id)!= null){
clientes.remove(id);
return true;
}return false;
}
public void listar(){
for(Cliente c: clientes.values()){
System.out.println(c);
}
}
public boolean vazia(){
return clientes.isEmpty();
}
}
[/code]
[code]package persistence;
import java.util.HashMap;
import entity.Funcionario;
public class FuncionarioDAO {
private HashMap<Integer, Funcionario> funcionario;
public FuncionarioDAO() {
funcionario = new HashMap<Integer, Funcionario>();
}
public boolean vazia() {
return funcionario.isEmpty();
}
public void listar() {
for (Funcionario f : funcionario.values()) {
System.out.println(f);
}
}
public void adicionar(Funcionario f) {
funcionario.put(f.getMatricula(), f);
}
public boolean remover(int id) {
if (this.localizar(id) != null) {
funcionario.remove(id);
return true;
} else {
return false;
}
}
public Funcionario localizar (int id){
if(funcionario.containsKey(id)){
return funcionario.get(id);
}return null;
}
}
[/code]
package exec;
import inputEntity.InputFuncionario;
import entity.Endereco;
import entity.Funcionario;
public class UtilFuncionario {
public void cadastrarFuncionario(){
Funcionario f = new Funcionario();
Endereco e = new Endereco();
InputFuncionario inf = new InputFuncionario();
f.setMatricula(inf.inputCodigo());
f.setNome(inf.inputNome());
f.setDataNascimento(inf.inputDataNascimento());
f.setCargo(inf.inputProfissao());
f.setSalario(inf.inputSalario());
f.setDataAdmissao(inf.inputDataAdmissao());
}
}
[code]package exec;
import inputEntity.InputCliente;
import entity.Cliente;
import entity.Endereco;
public class UtilCliente {
public void cadastrarCliente(){
Cliente c = new Cliente();
Endereco e = new Endereco();
InputCliente ic = new InputCliente();
c.setCodigo(ic.inputCodigo());
c.setNome(ic.inputNome());
c.setDataNascimento(ic.inputDataNascimento());
c.setProfissao(ic.inputProfissao());
e.setBairro(ic.inputBairro());
e.setCidade(ic.inputCidade());
e.setEstado(ic.inputEstado());
e.setTipoLogradouro(ic.inputTipoLogradouro());
e.setLogradouro(ic.inputLogradouro());
e.setComplemento(ic.inputComplemento());
c.setEndereco(e);
}
}
[/code]
[code]package exec;
public class Menu {
public static void menu(){
System.out.println(“O que deseja fazer ?”);
System.out.println("\n1. Cadastrar um cliente.");
System.out.println(“2. Cadastrar um funcionario.”);
System.out.println(“3. Deletar um cliente da lista.”);
System.out.println(“4. Deletar um funcionario da lista.”);
System.out.println(“5. Listar todas os clientes.”);
System.out.println(“6. Listar todas os funcionarios”);
System.out.println(“7. Alterar os dados de um cliente.”);
System.out.println(“8. Alterar os dados de um funcionario”);
System.out.println(“9. Alterar Salário ou cargo de um funcionário”);
System.out.println(“0. Sair”);
}
public static void menuAlterarCliente(){
System.out.println("O que deseja alterar?");
System.out.println("\n1. Nome");
System.out.println("\n2. Data de Nascimento");
System.out.println("\n3. Endereco");
System.out.println("\n4. Profissao");
System.out.println("Digite 5 pra sair");
}
public static void menuAlterarFuncionario(){
System.out.print("O que deseja alterar?");
System.out.print("\n1. Nome.");
System.out.print("\n2. Data de Nascimento.");
System.out.print("\n3. Endereco.");
System.out.print("\n4. Cargo.");
System.out.print("\n5. Data de admissao.");
}
public static void menuAlterarSalario(){
System.out.print("O que deseja alterar?");
System.out.print("\n1. Salario.");
System.out.print("\n2. Cargo.");
}
}
[/code]