java - 在将 String 转换为 Date 时,java.util.Date 和 java.sql.Date 之间存在歧义

标签 java date ambiguity date-conversion

我正在尝试从 HTML 的 Date 标签中获取日期作为输入

Birth Date <input type="date" name="dob"/>

并在jsp页面上使用访问

String strDate = request.getParameter("dob");

但它返回的是字符串格式,我想把它转换成日期,我试过如下

SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(strDate);

但是报错

incompatible types required: java.sql.Date found: java.util.Date

当我导入 pakage“java.util.*”以使用 java.util.Date date = sdf.parse(strDate); 时它给了

reference to Date is ambiguous, both class java.util.Date in java.util and class java.sql.Date in java.sql match

最佳答案

如果您需要 java.sql.Date(并且需要不兼容的类型:java.sql.Date found: java.util.Date 表明您需要),删除导入java.util.Date并使用DateFormat返回的java.util.Date构造一个java.sql .Date 类似

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
    Date date = new Date(sdf.parse(strDate).getTime());
} catch (ParseException e) {
    e.printStackTrace();
}

关于java - 在将 String 转换为 Date 时,java.util.Date 和 java.sql.Date 之间存在歧义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36221687/

相关文章:

java - 将两个值打包到一个 int 中

java - 具有动态路径的 ProcessBuilder(可能带有空格)

java - 与 ExecutorService 同时使用消息

javascript - 如何解析 JavaScript 中的特定日期字符串?

c++ - to_string(42) 不止一个实例匹配参数

Java 正则表达式 : To know the number of rows to be returned by a SQL Query

java - @DateTimeFormat 转换时出现夏令时错误

javascript - 如何将日期翻译为周名称

c++ - 函数的模糊引用/值版本

parsing - 为什么这个非常简单的语法会导致 GLR 解析器窒息?