| Autor |
Mensagem |
|
|
Isso é uma coisa que você nunca deveria fazer, porque assim cada usuário vai terminar tendo uma conexão só pra ele no banco de dados, o que normalmente vai estourar o seu banco.
Uma conexão com o banco deve ser descartada no exato momento que ela não seja mais necessaria para processar uma requisição. Veja mais sobre pools de conexão aqui:
http://java.sun.com/developer/onlineTraining/Programming/JDCBook/conpool.html
|
 |
|
|
Só que nessa classe HibernateUtil você está abrindo e fechando as sessões junto com as transações, o comportamento normal do Hibernate, diferentemente do seu código de testes, onde você abre sessões sem transações e mistura diversos objetos em sessões diferentes com objetos que não estão mais em sessão nenhuma.
Veja que na sua classe HibernateUtil, o objeto só é retornado quando o Hibernate faz o commit na transação e fecha a sessão, o que quer dizer que todos os objetos que saem dali estão "soltos", não fazem mais parte de sessão nenhuma.
Faça um teste usando essa sua classe HibernateUtil.
|
 |
|
|
pcalcado wrote:
Cada vez mais eu acredito que persistência transparente em java só o dia que que a JVM for projetada para isso.
Acho que é a coisa que o Gavin King mais repete no Hibernate In Action, "paradigm mismatch". Enquanto não houver um meio simples, escalável e rápido de se persistir e buscar "objetos" da linguagem, não tem jeito.
Eu acho que a persistência em cascata e a navegação de grafos no Hibernate são de uma ajuda imensa, mas o RDBMS continua lá, as tabelas continuam lá, só tem um adaptador no meio.
O Prevayler tem uma idéia interessante e o JXPath tem uma maneira simples de trafegar em um grafo de objetos, porque não juntar os dois?
Talvez o maior problema é que as maiores empresas que trabalham com bancos não estão muito interessadas nisso não....
|
 |
|
|
LuizAvila wrote:
Será que todo mundo sabe o real significado de uma Comunidade Java?
Qual é?
|
 |
|
|
Ora, usando MVC!
O MVC não pressupõe que você esteja montando um sistema pra web ou pra desktop.
Mas se o que você está procurando é um framework que ajude a simplificar o MVC em uma aplicação Swing, você pode testar o xWork http://www.opensymphony.com/xwork/ ou então o Spring RCP http://www.springframework.org/spring-rcp.
|
 |
|
|
Eu prefiro:
WebWork + SiteMesh + jsp
ou
Struts + Tiles + jsp
Por causa das taglibraries, mas saber usar o Velocity, ou algum outro framework pra trabalhar com templates é quase uma obrigação.
Quem sabe quando você vai ter que montar um newsletter? Vai ter que enviar um arquivo ou e-mail com relatórios do site?
Comprei o livro Pro Jakarta Velocity da Apress e ele valeu cada centavo, porque além de falar sobre Velocity ainda dá vários toques sobre como "montar" o seu sistema com os templates.
Dá uma olhada nele: http://apress.com/book/bookDisplay.html?bID=347
|
 |
|
|
Eu, pessoalmente, prefiro usar JSP por causa das taglibraries, especialmente pela integração entre as tags e as funcionalidades de validação do lado cliente, como o Validator do Struts.
Mas conhecer um sistema de templates sempre é bom, porque nem tudo o que você vai fazer vai ser acessado diretamente pela internet. Eu uso muito o Velocity pra gerar newsletters e quase tudo que é saída de texto que não é acessada diretamtente por navegadores.
|
 |
|
|
Aqui:
http://www.onjava.com/pub/a/onjava/2004/09/22/sitemesh.html
|
 |
|
|
Já falaram sobre isso aqui:
http://www.guj.com.br/posts/list/12698.java
Mas a galera do WebWork prefere usar o SiteMesh.
|
 |
|
|
paradiso wrote:Mas eu sei o algoritmo... o problema q ele da até qdo vc faz uma logica condicional...
Você já tentou usar expressões regulares?
|
 |
|
|
Olha, não sei como você está fazendo pra pegar essas sessões, nem sei porque você está abrindo e fechando uma dúzia de sessões ao mesmo tempo quando apenas uma seria mais do que o suficiente, mas tente usar a mesma sessão que você abriu no início do código pra fazer tudo, se der erro você posta aqui.
Outra coisa, você está usando ThreadLocal? Como é que funciona a classe que abre as sessões?
|
 |
|
|
steveo wrote:livro de craig larman,se quiser eu tenho a versão dele em pdf(inglês)
Peraí, pirataria não!
|
 |
|
|
Pois é, mas quando é um erro do próprio Hibernate ele dá uma mensagem dele ou mostra a mensagem do banco, nesse caso o erro está ocorrendo porque o banco parece ter fechado o result set antes do Hibernate terminar de carregar todos os objetos, o que não deveria estar acontecendo.
Eu acho difícil disso ser erro no hibernate, você poderia mostrar os mapeamentos e as classes que estão sendo persistidas?
|
 |
|
|
|
Que exemplo é esse? Que abas são essas? Como é que o navegador não está mostrando o scroll? Você desabilitou o scroll?
|
 |
|
|
|
Oxe, mande eles se posicionarem corretamente dentro do seu gerenciador de layout. Você está usando qual?
|
 |
|
|