Hibernate... Mais uma duvida

4 respostas
M

Pessoal,

Coloquei todos os mapeamentos e o hibernate.cfg.xml dentro do WEB-INF/classes.

tenho uma classe dentro do package modelo chamada TesteHiber assim:

import java.util.List;

import net.sf.hibernate.HibernateException;

import net.sf.hibernate.Session;

import net.sf.hibernate.SessionFactory;

import net.sf.hibernate.cfg.Configuration;

import modelo.Cd;

public class TesteHiber {

/** Creates a new instance of TesteHiber */
public TesteHiber() throws HibernateException {
    
   SessionFactory sessionFactory;
                
    try
    {
        sessionFactory = new Configuration().configure().buildSessionFactory();
        Session session = sessionFactory.openSession();
        
       List cds  = session.find("from Cd as cd where cd.artista.id = 1");
       
       for(int i=0;i<cds.size();i++)
       {
            Cd cd = (Cd)cds.get(i);
            System.out.println(cd.getTitulo());
       }
      
    }catch(HibernateException ex)
    {
        throw ex;
    }

            
}

e um index.jsp:

<%<a class="mention" href="/u/page">@page</a> contentType=“text/html%>

<%<a class="mention" href="/u/page">@page</a> pageEncoding=“UTF-8”%>

<%<a class="mention" href="/u/page">@page</a> import=“java.util.List, modelo.*”%>
JSP Page
<% 
  
  modelo.TesteHiber teste = null;

    teste = new modelo.TesteHiber();
    

    %>

</body>

Quando rodo a aplicação, não mostra os registros… o que será que acontece?

Abraços,

Mateus.

4 Respostas

F

Primeiramente isso vai imprimir no console ou arquivo de log referente:

System.out.println(cd.getTitulo());

Verifique se ocorre algum erro e poste-o no forum.

Caso não possua erros, certifique-se de que existem registros no banco :).

E outra, veja alguns padrões como singleton, service locator, … :slight_smile:

flw,

F

esqueci: utilize as tags code para postar código, é melhor de ler.

M

Mas o problema que estou usando na Web.

Então ele deveria imprimir no browser…

No Banco de dados existem registros.

Abraço,

Mateus.

F

No no. Não vai exibir no browser não. Pra isso vc tem que pegar a saida para o browser

System.out.println(cd.getTitulo());

Exemplo:

import java.io.*;

import javax.servlet.http.*;
import javax.servlet.*;

public class HelloServlet extends HttpServlet {
  public void doGet (HttpServletRequest req,
                     HttpServletResponse res)
    throws ServletException, IOException
  {
    PrintWriter out = res.getWriter();

    out.println("Hello, world!");
    out.close();
  }
}

flw,

Criado 28 de março de 2005
Ultima resposta 29 de mar. de 2005
Respostas 4
Participantes 2