Foros del Web » Programación para mayores de 30 ;) » Java »

Aplicacion Java Swing en varios host

Estas en el tema de Aplicacion Java Swing en varios host en el foro de Java en Foros del Web. Hola! Estoy desarrollando una aplicación en Java Swing para controlar el stock de producción de una empresa. En la aplicación, los operarios, desde los diferentes ...
  #1 (permalink)  
Antiguo 04/11/2012, 18:09
DKM
 
Fecha de Ingreso: noviembre-2012
Mensajes: 2
Antigüedad: 12 años
Puntos: 0
Pregunta Aplicacion Java Swing en varios host

Hola!

Estoy desarrollando una aplicación en Java Swing para controlar el stock de producción de una empresa. En la aplicación, los operarios, desde los diferentes ordenadores (host) que hay en la empresa, arrancaran el programa y guardaran los datos de trabajo de cada trabajador logueandose previamente.

Esto lo he hecho cargando primero un JFrame para la identificación del usuario y dependiendo del usuario que salga un JFrame nuevo con un panel o otro. Hasta aquí normal... pero mi problema es que no se la forma óptima de poder hacer la aplicacion para que varios operarios se conecten a la vez para guardar sus datos.

Tengo en mente varias opciones, de las cuales algunas tengo dudas de como implantarlas:

1ª OPCIÓN: Crear un ejecutable en cada host (unos 25) y configurando la conexion a una base de datos a un servidor. De esta manera un trabajador se loguearia, introduciría sus datos y cerraría sesión para dejar la aplicacion libre a otro trabajador en el mismo host. Contando que desde varios host se atacaría a la misma base de datos a la vez (supongo que no habría problema en esto no?)

(No había mencionado que la base de datos es MySQL y estará instalada en un servidor al cual todos deberán tener acceso desde su host)

2ª OPCIÓN: Tener un único ejecutable en el servidor donde también esta la base de datos y crear un acceso directo en todos los host y que se conecten varios a la vez. El problema de esta opción es que no sé si debería hacer la aplicacion con threads para que varias personas se puedan conectar al mismo programa (aquí me pierdo un poco) y cada vez que ejecuten la aplicación se cargue en un hilo diferente. La parte positiva de esta opción es que si quiero actualizar la aplicación a una versión mas nueva solo tendría que cambiar el ejecutable dentro del servidor.

Ahora mismo estoy empezando la aplicación como la primera opción, pero creo que la mejor manera sera la opción 2. No se si para poner los threads (y tampoco se si asi funcionaria) debería poner lo de new Runnable dentro del main principal o en otro lugar.

Estoy hecho un mar de dudas y por eso he escrito por aquí, a ver si alguien de ustedes me puede ayudar en algo. Soy bastante principiante en algunas cosas y dudo mucho en como hacer algunas formas, por eso quizás hay otras maneras de hacer la aplicación y vosotros me podéis aconsejar que hacer.

Gracias por leer la parrafada
  #2 (permalink)  
Antiguo 05/11/2012, 05:30
 
Fecha de Ingreso: enero-2009
Mensajes: 26
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Aplicacion Java Swing en varios host

Para distribuir tu aplicación entre varias máquinas quizás te interese echarle un ojo a esto: http://www.java.com/es/download/faq/java_webstart.xml

Ten en cuenta que si varios usuarios van a atacar la BBDD a la vez para, por ejemplo, actualizar el stock de algún producto, esto tiene que hacerse dentro de una transacción. Con JPA puedes implementar transacciones a BBDD. Una guía basica la tienes aquí: http://ignasiperez.com/jpa-2-0-concurrencia-y-bloqueo

Para más información sobre Java Web Start o JPA... www.google.com ;)
  #3 (permalink)  
Antiguo 05/11/2012, 07:33
DKM
 
Fecha de Ingreso: noviembre-2012
Mensajes: 2
Antigüedad: 12 años
Puntos: 0
Respuesta: Aplicacion Java Swing en varios host

Gracias v3rn0n por tu respuesta.

He estado leyendo varias pagias con información sobre lo que me comentas. El Java Web Server lo veo muy util y creo que me ayudará a recoger todo el código dentro del servidor en un solo .jar. Supongo que no habra problema cuando se llame al mismo jar desde diferentes ordenadores a la vez.

El tema de la JPA, mi aplicacion la estoy desarrollando con Hibernate. Tengo unos conocimientos basicos sobre Hibernate y lo he empezado a utilizar para que pueda tener las entidades (tablas) como clases. Lo que no sé es si Hibernate se encarga el solo de que no se machaquen datos o se introduzcan mal en la base de datos.
  #4 (permalink)  
Antiguo 05/11/2012, 09:38
 
Fecha de Ingreso: enero-2009
Mensajes: 26
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Aplicacion Java Swing en varios host

Hibernate se encarga... a medias :D (depende, como casi todo, de como lo tengas configurado).

De todas formas, asegurate de abrir transacciones en las operaciones que puedan causar problemas de concurrencia (como el incremento y decremento del stock) para no llevarte sorpresas desagradables.

http://docs.jboss.org/hibernate/orm/3.5/reference/es-ES/html/transactions.html

Etiquetas: escritorio, multihilos, multiusuario, swing, aplicaciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:15.