Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Simone RSS

listar registros de banco de dados em datatable

Recommended Posts

É o seguinte pessoal, preciso listar os registros de uma tabela (banco postgres), em uma página xhtml. 

Estou usando JSF framework Bootsfaces, o recurso DataTable. 

Já implementei Classe, Dao , Bean, verifiquei se a busca está correta várias vezes, mas não está listando na página.

Poderiam me dar uma ajuda com isso?

 

Página:

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:decorate xmlns="http://www.w3.org/1999/xhtml"
             xmlns:h="http://xmlns.jcp.org/jsf/html"
             xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
             template="template.xhtml"
             xmlns:b="http://bootsfaces.net/ui"
             xmlns:p="http://primefaces.org/ui"
             xmlns:f="http://xmlns.jcp.org/jsf/core">
    
    <ui:define name="title">SIAI - Atendimentos</ui:define>
    
    <ui:define name="conteudo">
        
        <b:row styleClass="table-responsive">
            
            <b:row>            
                <b:column col-sm="4" col-md="4" styleClass="">
                    <h1>Atendimentos</h1>
                </b:column>
                <b:column col-sm="2" col-md="2" styleClass="">
                </b:column>
                <b:column col-sm="6" col-md="6" style="padding: 30px 0px 10px 0px;">
                    <a href="cadastro-atendimento.jsf"><b:button look="info" size="md" value="Novo Atendimento"/></a> 
                    <!--O botão Editar abaixo é provisório, funcionando, o sistema vai 
                    exibir um ícone 'Editar' para cada ítem de atendimento da lista abaixo-->
                    <a href="editar-atendimento.jsf"><b:button look="info" size="md" value="Editar Atendimento"/></a> 
                </b:column>
            </b:row>
            
            <hr/>
            
            <h:form>                
                <h:dataTable styleClass="table table-striped"  value="#{atendimentoBean.atendimentos}" var="atendimento" >
                    <h:column>
                        <f:facet name="header"><h:outputText value="ID" /></f:facet>
                        <h:outputText value="#{atendimento.id_atendimento}" />
                    </h:column>
                    <h:column>
                        <f:facet name="header"><h:outputText value="Jornalista" /></f:facet>
                        <h:outputText value="#{atendimento.jornalista_atendido}" />
                    </h:column>
                    <h:column>
                        <f:facet name="header"><h:outputText value="Data/Hora" /></f:facet>
                        <h:outputText value="#{atendimento.data_horario_abertura}" />
                    </h:column>
                    <h:column>
                        <f:facet name="header"><h:outputText value="Emissora" /></f:facet>
                        <h:outputText value="#{atendimento.emissora}" />
                    </h:column>
                    <h:column>
                        <f:facet name="header"><h:outputText value="Situação" /></f:facet>
                        <h:outputText value="#{atendimento.status}" />
                    </h:column>
                </h:dataTable>                
            </h:form>
            
        </b:row>
        
    </ui:define>
</ui:decorate>

Classe entidade:

package br.org.hu.sistemaatendimentoimprensa.negocio;

import java.util.Date;

public class Atendimento {
    
    private int id_atendimento;    
    private Date data_horario_abertura;
    private String status;    
    private Date data_hora_encerramento; 
    
    private String resumo_pauta;    
    private String inspiracao;
    private String assunto;
    private String informacoes;
    private String tipo_entrevista;
    private String emissora;
    private String programa;
    private String jornalista_atendido;
    private String usuario_logado;
    
    
    public Atendimento(){         
        
    }   
    
    public void cadastrarAtendimento()
    {
    
    }
    
    public void editarAtendimento()
    {
    
    }

    public Date getData_horario_abertura() {
        return data_horario_abertura;
    }

    public void setData_horario_abertura(Date data_horario_abertura) {
        this.data_horario_abertura = data_horario_abertura;
    }

    public Date getData_hora_encerramento() {
        return data_hora_encerramento;
    }

    public void setData_hora_encerramento(Date data_hora_encerramento) {
        this.data_hora_encerramento = data_hora_encerramento;
    }
    
    public String getUsuario_logado() {
        return usuario_logado;
    }

    public void setUsuario_logado(String usuario_logado) {
        this.usuario_logado = usuario_logado;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getJornalista_atendido() {
        return jornalista_atendido;
    }

    public void setJornalista_atendido(String jornalista_atendido) {
        this.jornalista_atendido = jornalista_atendido;
    }

    public String getEmissora() {
        return emissora;
    }

    public void setEmissora(String emissora) {
        this.emissora = emissora;
    }

    public String getPrograma() {
        return programa;
    }

    public void setPrograma(String programa) {
        this.programa = programa;
    }

    public String getResumo_pauta() {
        return resumo_pauta;
    }

    public void setResumo_pauta(String resumo_pauta) {
        this.resumo_pauta = resumo_pauta;
    }

    public String getTipo_entrevista() {
        return tipo_entrevista;
    }

    public void setTipo_entrevista(String tipo_entrevista) {
        this.tipo_entrevista = tipo_entrevista;
    }

    public String getInspiracao() {
        return inspiracao;
    }

    public void setInspiracao(String inspiracao) {
        this.inspiracao = inspiracao;
    }

    public String getAssunto() {
        return assunto;
    }

    public void setAssunto(String assunto) {
        this.assunto = assunto;
    }

    public String getInformacoes() {
        return informacoes;
    }

    public void setInformacoes(String informacoes) {
        this.informacoes = informacoes;
    }

    public int getId_atendimento() {
        return id_atendimento;
    }

    public void setId_atendimento(int id_atendimento) {
        this.id_atendimento = id_atendimento;
    }
    
    

    @Override
    public int hashCode() {
        int hash = 7;
        hash = 13 * hash + this.id_atendimento;
        return hash;
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj) {
            return true;
        }
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final Atendimento other = (Atendimento) obj;
        if (this.id_atendimento != other.id_atendimento) {
            return false;
        }
        return true;
    }

    public void getData_abertura(String string) {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }

    public void getResumo_pauta(String string) {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }
    
    
}

 

Classe Bean (tentem considerar apenas o listar()):

package br.org.hu.sistemaatendimentoimprensa.beans;

import br.org.hu.sistemaatendimentoimprensa.dao.AtendimentoDAO;
import br.org.hu.sistemaatendimentoimprensa.negocio.Atendimento;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;



@ManagedBean
@SessionScoped
public class AtendimentoBean {
    
    private Atendimento atendimento = new Atendimento();      
    public List<Atendimento> atendimentos = new ArrayList<>();
    
    public AtendimentoBean()
    {
        
    }
    
    public void adicionar() throws SQLException{
            AtendimentoDAO dao = new AtendimentoDAO();
            dao.adicionar(atendimento); 
            atendimento = new Atendimento();        
    }
          
    public void listar() throws SQLException {
        AtendimentoDAO AtendimentoDao = new AtendimentoDAO();
        atendimentos = AtendimentoDao.buscar();
    }
    
    public void selecionarEditar(Atendimento a){
        Atendimento atend = new Atendimento();
        atend = a;
    }
    
    public void editar() throws SQLException{
        AtendimentoDAO dao = new AtendimentoDAO();
        dao.alteraDAO(atendimento);
        atendimento = new Atendimento();        
    }

    public Atendimento getAtendimento() {
        return atendimento;
    }

    public List<Atendimento> getAtendimentos() {
        return atendimentos;
    }

    public void setAtendimentos(List<Atendimento> atendimentos) {
        this.atendimentos = atendimentos;
    }
    

    public void setAtendimento(Atendimento atendimento) {
        this.atendimento = atendimento;
    }
    
    
    
    
    //------------------------------------------------------------------------
    // a variável e os métodos abaixo serviram para testar o funcionamento da estrutura
    String msg;
    
    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }
    
    public void exibeDados()
    {
          msg = atendimento.getJornalista_atendido() + "   --   " +
                  atendimento.getEmissora()+ "   --   " +
                  atendimento.getPrograma()+ "   --   " +
                  atendimento.getResumo_pauta()+ "   --   " +
                  atendimento.getTipo_entrevista()+ "   --   " +
                  atendimento.getInspiracao()+ "   --   " +
                  atendimento.getAssunto()+ "   --   " +
                  atendimento.getInformacoes();
    }   
    //-------------------------------------------------------------------------------------------
    
    
}


//package br.org.hu.sistemaatendimentoimprensa.beans;
//
//import br.org.hu.sistemaatendimentoimprensa.dao.AtendimentoDAO;
//import br.org.hu.sistemaatendimentoimprensa.negocio.Atendimento;
//import java.sql.SQLException;
//import java.util.ArrayList;
//import java.util.List;
//import javax.faces.bean.ManagedBean;
//import javax.faces.bean.SessionScoped;
//
//
//
//@ManagedBean
//@SessionScoped
//public class AtendimentoBean {
//    
//    private Atendimento atendimento = new Atendimento();      
//    public List<Atendimento> atendimentos = new ArrayList<>();
//    
//    public AtendimentoBean()
//    {
//        
//    }
//    
//    public void adicionar() throws SQLException{
//            AtendimentoDAO dao = new AtendimentoDAO();
//            dao.adicionar(atendimento); 
//            atendimento = new Atendimento();        
//    }
//          
//    public void listar() throws SQLException {
//        AtendimentoDAO dao = new AtendimentoDAO();
//        atendimentos = dao.buscar();
//    }
//    
//    public void selecionarEditar(Atendimento a){
//        Atendimento atend = new Atendimento();
//        atend = a;
//    }
//    
//    public void editar() throws SQLException{
//        AtendimentoDAO dao = new AtendimentoDAO();
//        dao.alteraDAO(atendimento);
//        atendimento = new Atendimento();        
//    }
//
//    public Atendimento getAtendimento() {
//        return atendimento;
//    }
//
//    public void setAtendimento(Atendimento atendimento) {
//        this.atendimento = atendimento;
//    }
//    
//    
//    
//    
//    //------------------------------------------------------------------------
//    // a variável e os métodos abaixo serviram para testar o funcionamento da estrutura
//    String msg;
//    
//    public String getMsg() {
//        return msg;
//    }
//
//    public void setMsg(String msg) {
//        this.msg = msg;
//    }
//    
//    public void exibeDados()
//    {
//          msg = atendimento.getJornalista_atendido() + "   --   " +
//                  atendimento.getEmissora()+ "   --   " +
//                  atendimento.getPrograma()+ "   --   " +
//                  atendimento.getResumo_pauta()+ "   --   " +
//                  atendimento.getTipo_entrevista()+ "   --   " +
//                  atendimento.getInspiracao()+ "   --   " +
//                  atendimento.getAssunto()+ "   --   " +
//                  atendimento.getInformacoes();
//    }   
//    //-------------------------------------------------------------------------------------------
//    
//    
//}

 

 

Classe DAO (Considerem apenas o buscar()) :

 


package br.org.hu.sistemaatendimentoimprensa.dao;

import br.org.hu.sistemaatendimentoimprensa.negocio.Atendimento;
import br.org.hu.sistemaatendimentoimprensa.util.FabricaConexao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author Simone
 */
public class AtendimentoDAO {

    public void adicionar(Atendimento atendimento) throws SQLException {
        Connection conexao = FabricaConexao.getConexao();
        
        String sql = "INSERT INTO atendimento.atendimento(data_abertura, resumo_pauta, assunto, status,informacoes_passadas,"
                + "tipo_entrevista,emissora_id_emissora, jornalista_id_jornalista)\n" 
                + " VALUES (?,?,?,?,?,?,?,?)";
        try {
            PreparedStatement st = conexao.prepareStatement(sql);
            //st.setDate(1, atendimento.getData_abertura());
            st.setString(2, atendimento.getResumo_pauta());
            st.setString(3, atendimento.getAssunto());
            atendimento.setStatus("Ativo");
            st.setString(4, atendimento.getStatus());
            st.setString(5, atendimento.getInformacoes());
            st.setString(6, atendimento.getTipo_entrevista());
            st.setString(7, atendimento.getEmissora());
            st.setString(8, atendimento.getJornalista_atendido());
         
            //executa
            st.execute();
            st.close();
            
            } catch (SQLException e) {
                throw new RuntimeException(e);
        } 
    }

    public List<Atendimento> buscar() throws SQLException {        
        try{
            Connection conexao = FabricaConexao.getConexao();        
            List<Atendimento> atendimentos = new ArrayList<>();        
            PreparedStatement st = conexao.prepareStatement("select * from atendimento.atendimento");        
            ResultSet rs = st.executeQuery();
            
            while (rs.next())
            {                
                Atendimento atendimento = new Atendimento();
                atendimento.setId_atendimento(rs.getInt("id_atendimento"));
                atendimento.setData_horario_abertura(rs.getDate("data_horario_abertura"));
                atendimento.setStatus(rs.getString("status"));
                atendimento.setData_hora_encerramento(rs.getDate("data_hora_encerramento"));
                atendimento.setResumo_pauta(rs.getString("resumo_pauta"));
                atendimento.setInspiracao(rs.getString("inspiracao"));
                atendimento.setAssunto(rs.getString("assunto"));
                atendimento.setInformacoes(rs.getString("informacoes"));
                atendimento.setTipo_entrevista(rs.getString("tipo_entrevista"));
                atendimento.setEmissora(rs.getString("emissora_id_emissora"));
                atendimento.setPrograma(rs.getString("programa_id_programa"));
                atendimento.setJornalista_atendido(rs.getString("jornalista_id_jornalista"));
                atendimento.setUsuario_logado(rs.getString("usuario_id_usuario"));
                atendimentos.add(atendimento);
            }
                return atendimentos;
                
        }catch(SQLException e){
            Logger.getLogger(AtendimentoDAO.class.getName()).log(Level.SEVERE, null, e);
            return null;
        }            
    }

    public void alteraDAO(Atendimento atendimento) throws SQLException {
        Connection conexao = FabricaConexao.getConexao();
        String sql = "UPDATE atendimento.jornalista set data_abertura=?, resumo_pauta=?, assunto=?, status=?,informacoes_passadas=?,"
                + "tipo_entrevista=?,emissora_id_emissora=?, jornalista_id_jornalista=? where id_atendimento=? ";
       
        try {
            PreparedStatement st = conexao.prepareStatement(sql);
            //st.setString(1,atendimento.getData_abertura());
            st.setString(2,atendimento.getResumo_pauta());
            st.setString(3,atendimento.getAssunto());
            st.setString(4,atendimento.getStatus());
            st.setString(5,atendimento.getInformacoes());            
            st.setString(6,atendimento.getTipo_entrevista());
            st.setString(7,atendimento.getEmissora());
            st.setString(8,atendimento.getJornalista_atendido());
            st.setInt(9,atendimento.getId_atendimento());
            st.execute();
            st.close();
        } catch (SQLException e) {
                throw new RuntimeException(e);
        }        
    }
    
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Pessoal, pergunta bem simples. Abaixo tenho o seguinte código:
       
      <script>
      function alerta()
      {
        if (window.confirm("Você realmente quer sair?")) {
          window.open("sair.html");
      }
      }
      </script>
       
      Funciona perfeitamente, só que está abrindo em outra janela e quero que abra na mesma janela.
       
      Alguém pode me ajudar?
    • Por ckcesar
      Eu tenho uma aplicação no zend com a versão 5.6 e com o postgresql 9.6. Agora eu precisei mudar a versão do meu postgresql para o 16.1, a parte de conexão do bd e consultas sqls funciona perfeitamente, o meu problema está para acessar os meus controllers. Eles não são encontrados em nenhuma rota, quero ver se alguém já passou por esse problema para me ajudar. Obrigado.
    • Por Jack Oliveira
      Ola pessoal boa tarde
      estou tentando fazer um texto se mover dentro do input porem nao esta dando resultado que preciso
       
      Este é o codigo 
      <script type="text/javascript"> $(document).ready(function () { var frases = [{ 'elemento': $('input[name=search_string]'), 'frases': ["O que você está procurando?", "Buscar por: Academia, Barbearia, Churrascaria, Decoração, Escola, Farmácia, Gráfica, Imobiliaria, Lanchonete, Mecânica, Odontologia, Pizzaria...", "Faça sua busca por segmentos aqui.", "São mais de 3mil empresas para serem exploradas."] }]; animaInput(frases); }); </script>  
    • Por Rengavitp
      Boa noite pessoal!
       
      Estou fazendo um projeto web com spring boot e é a primeira vez que lido com imagens. Minha idéia é salvar imagens em uma pasta e depois recuperar essa imagem e mostrar, mas o problema que estou enfrentando é o seguinte, seu eu envio para o src do projeto na pasta imagens, eu até consigo acessar as imagens, mas preciso atualizar o projeto na IDE (isso vai acontecer em produção?) eu tentei salvar em uma pasta fora do source do projeto mas ai não consigo acessar. como devo fazer? fiz várias pesquisas, mas nenhuma me ajudou.
       
      Desde já agradeço.
    • Por Rengavitp
      Bom dia pessoal!

      Estou com o seguinte problema, tenho uma aplicação que funciona perfeitamente rodando na minha IDE (Spring Tool Suite) mas ao gerar o arquivo war e subir a aplicação no tom cat ele não funciona, mas apenas erro 404, abri o war e todos os arquivo estão lá, já tem seguir tudo quando e tutorial com problemas semelhantes mas nenhum resolveu. Abaixo mais informações,.

      Versão do java na aplicacao 11
      Versão do jva no servidor 11
      Versão do tomcat no servidor 8.5.55
       
      minha classe principal
      package br.com.masterplastfitas; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; @SpringBootApplication public class MasterApplication extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(MasterApplication.class, args); } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(MasterApplication.class); } } meu pom.xml
      <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.2</version> <relativePath /> <!-- lookup parent from repository --> </parent> <groupId>masterplast</groupId> <artifactId>Master</artifactId> <version>2.0</version> <packaging>war</packaging> <name>Master</name> <description>Aplicação web </description> <properties> <java.version>11</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional> </dependency> <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <dependency> <groupId>org.thymeleaf.extras</groupId> <artifactId>thymeleaf-extras-springsecurity5</artifactId> </dependency> <dependency> <groupId>org.mindrot</groupId> <artifactId>jbcrypt</artifactId> <version>0.4</version> </dependency> <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.0</version> </dependency> </dependencies> <build> <plugins> <!-- <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> --> </plugins> </build> </project>  
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.