Formato de fecha valido para mysql
Este método funciona correcto, pero quiero sus opiniones respecto al formato de fecha para guardar en Mysql.
Algunas formas mejores de hacer esto?
- Inicie sesión o regístrese para enviar comentarios
Este método funciona correcto, pero quiero sus opiniones respecto al formato de fecha para guardar en Mysql.
Algunas formas mejores de hacer esto?
Una mejor forma es pasarle un
Una mejor forma es pasarle un objeto Date y usar el método setTime de java.sql.PreparedStatement ( o setTimestamp si quieres guardar la hora también ) )
Lo que estas haciendo ahí es crear un string tipo:
Lo cual es un tanto inecesario porque eso es precisamente una de las cosas que hacen los drivers de jdbc, insertar de forma correcta.
Además que esta un tanto raro que una fecha la tengas como "string" inicialmente, pero ese es otro tema.
Usando el PreparedStatement sería algo como:
Y listo!
Recuerda que si la fecha la estas obteniendo como un string y peor aún dejas que llegue desde el usuario ( por ejemplo en un formulario web )
Y la pasas tal cual, tu aplicación se hace ( más ) vulnerable a un ataque de SQL injection.
La fecha la seteo en un JTextField
Lo primero que estoy haciendo es un método para ponerlo en un JTextFieldFecha que no sea modificable. Eso lo hago con así:
Esto me da como resultado la fecha actual en este formato:01/06/2011
Segun yo cuando hago el getFecha().getText(). debo convertir en un formato válido par a poder almacenarlo en mysql.
Esto lo hago usando este método.
Y me retorna la fecha en este formato 2011-06-01, ya tengo un formato válido.
ahora hago objeto.setFecha(2011-06-01).
Así se me ocurrio y espero criticas y sugerencias :)
Saludos :)
recomendaciones
Varias:
1. Renombra tu clase a FormatoFecha
2. Elimina tu clase FormatoFecha y utiliza java.text.SimpleDateFormat
3. Utiliza directamente fechas con MySQL, y PreparedStatements parametrizados, como ya mencionó Oscar. MySQL soporta fechas perfectamente, no veo por qué tienes que estárselas pasando como cadenas.
Gracias por las recomendaciones
Se ve la novatez de no conocer aun muchas cosas.
Gracias usare lo que me recomiendan thanks bye