Java - Capturar primera ejecucion

 
Vista:

Capturar primera ejecucion

Publicado por Luis (83 intervenciones) el 12/05/2010 19:43:05
Buenas

Quisiera saber si es posible capturar la primera ejecucion de una aplicacion java, es decir, como saber cuando es la primera vez que la aplicacion se ejecuta.

Mi problema es que necesito que me aparezca una pantalla de bienvenida solo la primera vez que se ejecuta la aplicacion, para crear en ese momento el usuario, contraseña y la base de datos a utilizar.

Me pregunto si java tiene alguna funcion definida para esto o de que otra forma seria posible hacerlo?

Muchas gracias de ante mano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Capturar primera ejecucion

Publicado por James (207 intervenciones) el 12/05/2010 21:53:04
Si lo que necesitas es crear el usuario y DB del sistema, me parece correcto verificar si existe la DB pues aun si verificases la primera ejecucion para crear la DB si alguien la borra seguiria habiendo problemas, por otra parte que yo sepa no hay forma de saber si es la primera ejecucion de un programa yo alguna ves lo hice verificando la existencia de un archivo de configuracion del programa, si no existia asumia era la primera ejecucion y mandaba un asistente de configuracion, algo similar podrias hacer en tu caso, Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Capturar primera ejecucion

Publicado por Lexinerus (2 intervenciones) el 12/05/2010 23:10:02
¡Facil!

En caso de no tener una Base de datos, crea en un try catch lectura de un archivo, en caso de error, creas el archivo y muestras la pantalla de inicio por primera vez.

Al volver a ejecutar la aplicacion validará que el archivo existe y no mostrará mas la pantalla de iniciacion, el concepto es exactamente el mismo en una Base de datos, solo que utilizarias registros en vez de archivos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Capturar primera ejecucion

Publicado por Luis (83 intervenciones) el 13/05/2010 00:05:23
Si eso es correcto ademas de verificar si es la primera ejecucion, tambien se deberia verificar si existe la base de datos.

Podrias ser mas especifico en que te refieres a crear un archivo de configuracion del sistema?

Yo habia pensado crear un archivo serializado para tener un poco mas de seguridad de que alguien lo pueda modificar y leerlo cada vez que se habra la aplicacion.

Que opinas tu que tipo de archivo seria el mas adecuado para realizar esta tarea?

Ah y muchas gracias por tu aporte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Capturar primera ejecucion

Publicado por James (207 intervenciones) el 14/05/2010 02:15:12
En mi caso el archivo de configuracion contenia los datos de conexion contra la db(url de la db, user, passw, esquema, etc) yo usaba ampliamente este archivo pero por la informacion que tenia debia ser de dificil modificacion por ello lo encriptaba a 1024 bits

Podrias encriptar la informacion que necesitas y mandar esa informacion de preferencia en forma binaria a un archivo y guradarlo con una extencion propia de esa forma crearias algo que muy dificilmente logran descifrar, tambien podrias crear tu propio metodo de encriptacion basandote en lo existente pero aumentando la seguridad, yo tengo una clase propia que encripta a 1024bits es una seguridad de altisimo nivel con eso me aseguro que si desean descifrar se tardarian mucho tiempo y el sistema se configura por internet y modifica el archivo llave cada 12 meses con lo que no creo logren descifrar la informacion, ese era el archivo que yo verificaba, si alguien lo borraba o era la primera ejecucion lanzaba el asistente de configuracion que te epermitia elegir el servidor de DB o crear la DB y datos de conexion, espero te sirva. Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Capturar primera ejecucion

Publicado por Luis (83 intervenciones) el 14/05/2010 03:24:17
Bueno voy a buscar información al respecto porque la verdad conozco muy poco del tema del cifrado (y menos en java. Hace tiempo hice algunos codigos sencillos en lenguaje c y nada mas), y creo que es un tema bastante serio que hay tratar con mucho cuidado.

La verdad me sirve de mucho tu aporte y lo voy a tomar muy en cuenta.

Si me puedes dar una orientación de que tipo de algoritmo de cifrado puedo utilizar o alguna información que pueda orientar en el camino de aprender este tema me seria de gran ayuda.

Saludos y de nuevo muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Capturar primera ejecucion

Publicado por James (207 intervenciones) el 15/05/2010 00:26:21
lo mejor seria no usar un solo algoritmo mejor usa alguna combinacion de varios algoritmos siempre es mas seguro trabajar de esa forma, para java existe una API completa de encriptacion, y si tu aplicaion no es critica podrias tranquilamente usar alguno de los ejmplos que estan por la red mejorandolo un poco, en mi caso tuve que realizar algo mas avanzado debido a que era un sitema contable bastante grande, si de algo te sirve podria pasarte una clase con la que hacia mis primeras encriptaciones, Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Capturar primera ejecucion

Publicado por Luis (83 intervenciones) el 15/05/2010 04:51:31
Estuve buscando y consegui algunas clases que te permiten encriptar datos. Además estuve leyendo en algunos foros y algunas personas dicen que lo mas seguro es obtener los datos de configuración de la base de un servidor externo y dicen además que muchos de los métodos de encriptación son vulnerables por lo cual, lo que tu me explicas de combinar varios métodos de encriptación seria una solución muy adecuada.

Lo de usar el servidor externo me lo consigo factible pero tambien tiene su desventaja si no se dispone de conexion a internet en el lugar donde se va a ejecutar el sistema, ya que las aplicaciones que he desarrollado en java todas son standalone. Además hablan de que con sql server se soluciona este problema, pero tocaría investigar a que se refieren y si es cierto, ya que no tengo idea como trabaja dicho servidor.

Me gustaría que me enviaras esa clase ya que un ejemplo práctico nunca esta demás, además con la practica es que uno aprende. Mi email es [email protected].

Y de nuevo gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar