Java 从jDateChooser获取值并保存到MS sql DB

Java 从jDateChooser获取值并保存到MS sql DB,java,sql-server,swing,jdatechooser,Java,Sql Server,Swing,Jdatechooser,我的对话框中有两个jDateChooser,我想保存到MS-SQL数据库中,因为该数据类型有问题。你知道如何解决这个问题吗!只有在将数据库中的数据类型转换为nvarchar并将值转换为从jDateChooser返回的字符串时,才能执行此操作 //我可以用这种方式保存,但我不使用jDateChooser java.util.Date utilDate = new java.util.Date(); java.sql.Date sqldate = new java.sql.Date(u

我的对话框中有两个jDateChooser,我想保存到MS-SQL数据库中,因为该数据类型有问题。你知道如何解决这个问题吗!只有在将数据库中的数据类型转换为nvarchar并将值转换为从jDateChooser返回的字符串时,才能执行此操作

//我可以用这种方式保存,但我不使用jDateChooser

   java.util.Date utilDate = new java.util.Date();
   java.sql.Date sqldate = new java.sql.Date(utilDate.getTime());
//我无法使用jDateChooser保存日期

    java.sql.Date sqldate = new java.sql.Date(jDateChooser3.getDate());
//我找到的唯一方法

  SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");

  String sd = dateFormat.format(jDateChooser3.getDate());

  obj.setStartDate(sd);

//

从您发布的代码判断,它看起来像是
jDateChooser3.getDate()
返回一个
java.util.Date
实例,而
java.sql.Date(毫秒)
构造函数期望日期/时间为
毫秒值

使用此代码,它将工作:

java.sql.Date sqldate = new java.sql.Date(jDateChooser3.getDate().getTime());
由于它来自日期选择器组件,无效输入很可能导致返回日期
null
,因此您可能还需要检查:

java.util.Date d = jDateChooser3.getDate();
if (d == null) {
    System.out.println("No date specified!");
} else {
    java.sql.Date sqldate = new java.sql.Date(d.getTime());
    // Do something with sqldate
}

右键单击jDateChooser。转到属性和dateFormatString。设置此格式:dd-MM-yyyy。

JDateChooser
类来自何处?哪个库和包?这是一个请张贴MCVE(最小完整和可验证的例子)。同时,请检查JdateChooser.getDate()的返回类型,如果是java.util.Date,请尝试java.sql.Date sqldate=new java.sql.Date(jDateChooser3.getDate()getTime());计算这两个日期之间的天数如何两个日期之间的天数:嘿,伙计,它这样保存数据库它不显示时间2014-05-12 00:00:00.000没有时间到底有什么问题?日期不是来自没有指定时间的日期选择器吗?我无法将时间保存到数据库中!这就是如何将所有这些结合在一起的问题