Boa tarde.
Não estou conseguindo visualizar as unidades de trabalhos ja cadastradas durante o cruso, tentei alterar, disse que salvo, mas vou no banco de dados e não mudou nada. Quando tendo fazer um select no banco na tabela cargos, da erro.
se alguém puder me ajudar.
grato;
package br.com.alura.spring.data.service;
import java.util.Scanner;
import org.springframework.stereotype.Service;
import br.com.alura.spring.data.orm.UnidadeTrabalho;
import br.com.alura.spring.data.repository.UnidadeTrabalhoRepository;
@Service
public class CrudUnidadeTrabalhoService {
private Boolean system = true;
private final UnidadeTrabalhoRepository unidadeTrabalhoRepository;
public CrudUnidadeTrabalhoService(UnidadeTrabalhoRepository unidadeTrabalhoRepository) {
this.unidadeTrabalhoRepository = unidadeTrabalhoRepository;
}
public void inicial(Scanner scanner) {
while (system) {
System.out.println("Qual ação de cargo deseja executar");
System.out.println("0 - Sair");
System.out.println("1 - Cadastrar");
System.out.println("2 - Atualizar");
System.out.println("3 - Visualizar");
System.out.println("4 - Deletar");
int action = scanner.nextInt();
switch (action) {
case 1:
salvar(scanner);
break;
case 2:
atualizar(scanner);
break;
case 3:
visualizar();
break;
case 4:
deletar(scanner);
break;
default:
system = false;
break;
}
}
}
private void salvar(Scanner scanner) {
System.out.println("Nome da unidade: ");
String nome = scanner.next();
System.out.println("Endereço: ");
String endereco = scanner.next();
UnidadeTrabalho unidadeTrabalho = new UnidadeTrabalho();
unidadeTrabalho.setDescricao(nome);
unidadeTrabalho.setEndereco(endereco);
unidadeTrabalhoRepository.save(unidadeTrabalho);
System.out.println("Salvo!!!");
}
private void atualizar(Scanner scanner) {
System.out.println("Numero do Id: ");
Integer id = scanner.nextInt();
System.out.println("Nome da unidade: ");
String nome = scanner.next();
System.out.println("Endereço: ");
String endereco = scanner.next();
UnidadeTrabalho unidadeTrabalho = new UnidadeTrabalho();
unidadeTrabalho.setId(id);
unidadeTrabalho.setDescricao(nome);
unidadeTrabalho.setEndereco(endereco);
unidadeTrabalhoRepository.save(unidadeTrabalho);
System.out.println("Atualizado/Alterado!!!");
}
private void visualizar() {
Iterable<UnidadeTrabalho> unidades = unidadeTrabalhoRepository.findAll();
unidades.forEach(unidade -> System.out.println(unidade));
}
private void deletar(Scanner scanner) {
System.out.println("Id");
int id = scanner.nextInt();
unidadeTrabalhoRepository.deleteById(id);
System.out.println("Deletado");
}
}
package br.com.alura.spring.data.orm;
import java.util.List;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.ManyToMany;
import javax.persistence.Table;
@Entity
@Table(name = "unidade_trabalho")
public class UnidadeTrabalho {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String descricao;
private String endereco;
@ManyToMany(mappedBy = "unidadeTrabalhos", fetch = FetchType.EAGER)
private List<Funcionario> funcionarios;
public UnidadeTrabalho() {
}
public UnidadeTrabalho(String descricao, String endereco) {
super();
this.descricao = descricao;
this.endereco = endereco;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
public List<Funcionario> getFuncionarios() {
return funcionarios;
}
public void setFuncionarios(List<Funcionario> funcionarios) {
this.funcionarios = funcionarios;
}
@Override
public String toString() {
return "Unidades: " + " id:" + id + "| descricao: " + descricao + "| endereco: " + endereco;
}
}