Alguém pode me ajudar ? tenho um banco de dados postegreSQL com três tabelas Authors, Titulo e Isbn tenho que criar uma aplicação Java Web utilizando JSF e tenho que mostrar as três tabelas ao mesmo tempo e criar uma consulta onde consiga consultar qualquer valor nas três tabelas?
Programação Java JSF
12 Respostas
E qual a duvida?
Eu não consigo criar uma ArrayList que mostre as 3 tabelas
Você quer mostrar estas “3 tabelas” em uma dataTable(componente JSF) ?
isso mesmo
Que tal usar Polimorfismo? Criar algo + ou - assim:
public class Pessoa {
private Long id;
private String nome;
//getters and setters
}
public class PessoaFisica extends Pessoa {
private Long rg;
//getters and setters
public class PessoaJuridica extends Pessoa {
private String cpf;
//getters and setters
Então sua list seria:
List<Pessoa> todasAsPessoasDoSistemaFisicaEJuridica = new ArrayList<Pessoa>();
//no qual vc terá acesso a id e nome independente se é da classe Fisica ou Juridica
Você pode adotar de extrair os dados para um DTO também. Fica ao seu critério.
Vou tentar aqui Obrigado!
Consegue me ajudar também com uma pesquisa onde eu possa procurar dados na tabela usando ex. Nome ou Id utilizando padrao MVC do JSF
O que vc tá usando? Hibernate ou Jdbc na unha? Cadê o código que faz esta busca?
Estou Usando JDBC nao posso usar Hibernate por que e trabalho academico
public List selectAll(){
List lsAuthor = null;
String sql = “SELECT id, nome, sobrenome, email, telefone “
+ “FROM author ORDER BY id”;
try {
con = openConnection();
ps = con.prepareStatement(sql);
rs = ps.executeQuery();
lsAuthor = new ArrayList();
while (rs.next()){
Author a = new Author();
a.setId(rs.getLong(“id”));
a.setNome(rs.getString(“nome”));
a.setSobrenome(rs.getString(“sobrenome”));
a.setEmail(rs.getString(“email”));
a.setTelefone(rs.getString(“telefone”));
lsAuthor.add(a);
}
}catch (Exception e){
System.err.println(”---------------------”);
System.err.println(“Erro: " + e.getMessage());
e.printStackTrace();
System.err.println(”---------------------");
} finally {
closeConnection(con, ps, rs);
}
return lsAuthor;
}
Eu uso esse codigo para que eu retorne uma lista do banco ai eu preciso fazer uma consulta na tabelo so que nao sei como montar o codigo para fazer a busca
Segue este tutorial ai e adapta a sua necessidade:
https://www.mkyong.com/jdbc/jdbc-preparestatement-example-select-list-of-the-records/
Obrigado