我正在使用下面的方法来进行所描述的转换。但是 java.sql.Date 方法已被弃用。那么,他们使用这种方法有什么害处吗?由于以下语句运行良好。
(从 session 中以 servlet 中的字符串形式检索日期值,然后将日期存储在 MySQL 中。)
String f33_ = (String) session.getAttribute("sf33");
java.sql.Date f33 = new java.sql.Date(Integer.parseInt(f33_.substring(6, 10))- 1900, Integer.parseInt(f33_.substring(3, 5))-1,Integer.parseInt(f33_.substring(0, 2)));
最佳答案
您应该使用 SimpleDateFormat
(或 Joda Time 中的等效项),而不是尝试自己解析它:
DateFormat format = new SimpleDateFormat("dd/MM/yyyy", Locale.US);
format.setTimeZone(TimeZone.getTimeZone("Etc/UTC"));
java.util.Date date = format.parse(text);
java.sql.Date sqlDate = new java.sql.Date(date.getTime());
关于mysql - 将字符串 dd/MM/yyyy 日期转换为 java.sql.date yyyy-MM-dd,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9624777/