Hola!!!! mi problema es el siguiente, necesito saber como pasar un xml a java para luego usarlo con hilos, por ejemplo tengo un xml llamado clientes, ese xml lo cargo desde una aplicación java lo que tengo que hacer es tomar ese xml con la informacion y mandarlo por medio de un hilo hasta una clase servidor(socket) para q desde ahi arme el cuerpo del correo y lo mande .
Lo que no se es si tengo que pasar ese xml a un arraylist o un map o si lo puedo hacer cuando el xml esta en memoria?
Tu clase "servidor(socket)" debe tener acceso a la variable o zona de memoria donde tienes almacenado el xml(trabajar o no con hilos no es relevante en este contexto). Para que tu clase tenga acceso, puedes o bien suministrar la variable en el constructor [new ServerSocket(variableWithXmlData)], usar un setter [instance.setData(variableWithXmlData)] o (esto no es recomendable) hacer estático(y público) el contenido de [variableWithXmlData], de manera que sea accesible desde cualquier parte.
En el contexto de hilos, tendrías que:
1.- Hacer que tu clase SocketServer implemente la interfaz Runnable
2.- Hacer que tu clase SocketServer tenga un constructor tal que [public SocketServer(byte[] xmlData)]
3.- Implementar el metodo [public void run()] usando los datos que (ahora si) están en el contexto de la instancia de la clase
Lo que no se es si tengo que pasar ese xml a un arraylist o un map o si lo puedo hacer cuando el xml esta en memoria?
31/10/2018 18:33
02/11/2018 10:13
Tu clase "servidor(socket)" debe tener acceso a la variable o zona de memoria donde tienes almacenado el xml(trabajar o no con hilos no es relevante en este contexto). Para que tu clase tenga acceso, puedes o bien suministrar la variable en el constructor [new ServerSocket(variableWithXmlData)], usar un setter [instance.setData(variableWithXmlData)] o (esto no es recomendable) hacer estático(y público) el contenido de [variableWithXmlData], de manera que sea accesible desde cualquier parte.
En el contexto de hilos, tendrías que:
1.- Hacer que tu clase SocketServer implemente la interfaz Runnable
2.- Hacer que tu clase SocketServer tenga un constructor tal que [public SocketServer(byte[] xmlData)]
3.- Implementar el metodo [public void run()] usando los datos que (ahora si) están en el contexto de la instancia de la clase
Espero que te haya ayudado.
06/11/2018 15:52
08/08/2019 15:18