| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 12:30:57
|
vmsb11
Java Ninja
Membro desde: 25/08/2008 12:35:00
Mensagens: 251
Offline
|
Olá pessoal estou desenvolvendo um aplicativo em Desktop com Banco de Dados, decidi utilizar MVC pois gosto muito deste modelo e tb acho que ele se aplica melhor na minha aplicação....
Na minha aplicação eu terei que inserir um grande volume de registros no banco de dados e por isso decidir fazer isto em um Thread separada, a minha dúvida é como integrar Threads no meu modelo MVC, devo fazer a minha classe de controller implementar Runnable? ou devo criar uma classe separada para implementar a Thread?
Agradeço a quem puder me responder!
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 12:40:56
|
oddy.silva
JavaEvangelist
![[Avatar]](/images/avatar/3647532ec07150bfa31ec2896932bdfb.jpg)
Membro desde: 24/11/2008 11:42:10
Mensagens: 352
Localização: Itu
Offline
|
Cara, não sei se você tá usando Hibernate, mas se tiver, dá uma olhada no padrão Thread-local Session.
Você vai gostar.
http://simoes.org/docs/hibernate-2.1/42.html
Tem mais coisas no Google. Eu aprendi a usar esse padrão lendo o Hibernate In Action, que fala bastante sobre ele, mas exemplifica mais com Servlets.
This message was edited 2 times. Last update was at 01/07/2010 12:42:41
|
Odair
Gestão em T.I
FATEC - ITU
"Quem quer fazer alguma coisa, encontra um meio"
Quer ser um programador veloz? Então compre um par de tênis a jato.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 13:30:22
|
vmsb11
Java Ninja
Membro desde: 25/08/2008 12:35:00
Mensagens: 251
Offline
|
oddy.silva wrote:Cara, não sei se você tá usando Hibernate, mas se tiver, dá uma olhada no padrão Thread-local Session.
Você vai gostar.
http://simoes.org/docs/hibernate-2.1/42.html
Tem mais coisas no Google. Eu aprendi a usar esse padrão lendo o Hibernate In Action, que fala bastante sobre ele, mas exemplifica mais com Servlets.
obrigado pela ajuda oddy.silva mas eu estou usando o MySQL msm sem integração com o hibernate....
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 13:42:36
|
vmsb11
Java Ninja
Membro desde: 25/08/2008 12:35:00
Mensagens: 251
Offline
|
Estava lendo um tutorial de SwingWorker e achei interessante a minha única dúvida é como integrar Concorrência isso ao MVC....
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 14:01:18
|
vhmolinar
JavaChild
![[Avatar]](/images/avatar/ef8ff3bb5f926198d139c3e9750a3739.jpg)
Membro desde: 21/10/2008 20:57:22
Mensagens: 103
Offline
|
vmsb11 wrote:Estava lendo um tutorial de SwingWorker e achei interessante a minha única dúvida é como integrar Concorrência isso ao MVC....
Em Java, threads são classes, então o que você vai precisar é ter uma classe separada à ser executada por uma thread e não fazer uma das camadas do MVC se tornar uma thread. Exemplo:
você teria uma classe runnable
que seria instanciada por uma thread
onde essa inicilização poderia ser feita em paralelo ao fluxo do MVC, por exemplo, quando sua aplicação inicializasse ou sei lá, a partir do momento que você preicsar que ela comece a funcionar...
|
@vhmolinar
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 14:10:11
|
vmsb11
Java Ninja
Membro desde: 25/08/2008 12:35:00
Mensagens: 251
Offline
|
vhmolinar wrote:
vmsb11 wrote:Estava lendo um tutorial de SwingWorker e achei interessante a minha única dúvida é como integrar Concorrência isso ao MVC....
Em Java, threads são classes, então o que você vai precisar é ter uma classe separada à ser executada por uma thread e não fazer uma das camadas do MVC se tornar uma thread. Exemplo:
você teria uma classe runnable
que seria instanciada por uma thread
onde essa inicilização poderia ser feita em paralelo ao fluxo do MVC, por exemplo, quando sua aplicação inicializasse ou sei lá, a partir do momento que você preicsar que ela comece a funcionar...
hum.... ok isso eu entendo mas por exemplo a classe que vai executar a thread ele ficaria no pacote do controller????....
e mais uma dúvida se ela fosse uma classe privada dentro da minha classe Controller isso é uma boa prática de programação????....
obrigado pela ajuda....
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 14:16:04
|
vhmolinar
JavaChild
![[Avatar]](/images/avatar/ef8ff3bb5f926198d139c3e9750a3739.jpg)
Membro desde: 21/10/2008 20:57:22
Mensagens: 103
Offline
|
vmsb11 wrote:
vhmolinar wrote:
vmsb11 wrote:Estava lendo um tutorial de SwingWorker e achei interessante a minha única dúvida é como integrar Concorrência isso ao MVC....
Em Java, threads são classes, então o que você vai precisar é ter uma classe separada à ser executada por uma thread e não fazer uma das camadas do MVC se tornar uma thread. Exemplo: você teria uma classe runnable que seria instanciada por uma thread onde essa inicilização poderia ser feita em paralelo ao fluxo do MVC, por exemplo, quando sua aplicação inicializasse ou sei lá, a partir do momento que você preicsar que ela comece a funcionar...
hum.... ok isso eu entendo mas por exemplo a classe que vai executar a thread ele ficaria no pacote do controller????.... e mais uma dúvida se ela fosse uma classe privada dentro da minha classe Controller isso é uma boa prática de programação????.... obrigado pela ajuda....
Depende do que você entende por Modelo e Controle, mas tenho uma idéia de imediato de que não seria no controle não. Agora sobre ser uma boa práticas ser uma inner class ou não, bom eu não sei, mas fico pensando no que poderia acontecer caso sua classe que engloba morresse e a thread ainda estivesse em execução. Taí uma boa questão. Será que alguém aí sabe como java reageria a isso? hehe
This message was edited 1 time. Last update was at 01/07/2010 14:16:50
|
@vhmolinar
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 14:18:02
|
vmsb11
Java Ninja
Membro desde: 25/08/2008 12:35:00
Mensagens: 251
Offline
|
hum....eh mas isso não vai acontecer porq a classe de controller sempre ficará ativa....
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 14:19:41
|
rdgms
Virtual Machine Man
![[Avatar]](/images/avatar/825ab77fe4eb3419db2fc9c6ceff7146.jpg)
Membro desde: 21/12/2006 22:08:57
Mensagens: 628
Localização: São Paulo
Offline
|
Você pode jogar os objetos na BlockingQueue.. e depois consumir.. em uma thread. ai caso de algum problema você pode colocar esse objeto que deu erro em outra Queue ai depois você ver qual a melhor maneira de tratar o problema Abraço!
This message was edited 1 time. Last update was at 01/07/2010 14:23:09
|
PDF, JPG, GIF, DOC e DOCX
JAVA! SCALA!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 14:35:38
|
vmsb11
Java Ninja
Membro desde: 25/08/2008 12:35:00
Mensagens: 251
Offline
|
Agradeço as opniões mas ainda essa parte de integração ainda está muito obscura para mim
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 15:01:36
|
rdgms
Virtual Machine Man
![[Avatar]](/images/avatar/825ab77fe4eb3419db2fc9c6ceff7146.jpg)
Membro desde: 21/12/2006 22:08:57
Mensagens: 628
Localização: São Paulo
Offline
|
Você pode no controle ao invez de chamar o dao para já gravar o Objeto coloca em uma classe com uma blockingqueue.... você criar uma thread para ficar consumindo essa fila!
Abraço!
|
PDF, JPG, GIF, DOC e DOCX
JAVA! SCALA!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 16:16:35
|
vmsb11
Java Ninja
Membro desde: 25/08/2008 12:35:00
Mensagens: 251
Offline
|
rdgms wrote:Você pode no controle ao invez de chamar o dao para já gravar o Objeto coloca em uma classe com uma blockingqueue.... você criar uma thread para ficar consumindo essa fila!
Abraço!
hum....obrigado rdgms pela ajuda, onde posso encontrar um bom tutorial da clase blockingqueue????....
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2010 22:19:08
|
vmsb11
Java Ninja
Membro desde: 25/08/2008 12:35:00
Mensagens: 251
Offline
|
olá pessoal, tenho mais uma dúvida, o seguinte código é uma boa prática de programação????....
o código acima é uma boa prática de programação????....
foi a forma mais apropriada que eu encontrei pra solucionar a minha dúvida que foi a responsável pela criação deste tópico....além da BlockingQueue que ja foi citada acima
This message was edited 2 times. Last update was at 02/07/2010 11:11:43
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/07/2010 16:09:33
|
vmsb11
Java Ninja
Membro desde: 25/08/2008 12:35:00
Mensagens: 251
Offline
|
alguém pode me indicar um bom tutorial de como se trabalha com threads e banco de dados????....
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/07/2010 13:36:21
|
vmsb11
Java Ninja
Membro desde: 25/08/2008 12:35:00
Mensagens: 251
Offline
|
pessoal, a respeito da minha dúvida inicial, eu desenvolvi o código da minha aplicação que integra threads e mvc e postarei abaixo o código resumido da parte de integração de threads e mvc e gostaria da opnião de vocês para ver se o código está bem desenvolvido....
|
|
|
 |
|
|