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

我的对话框中有两个jDateChooser,我想保存到有这些数据类型问题的MS-SQL DB。 不知道如何解决这个问题! 我只能在数据库中将数据类型转换为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(millis)构造函数则期望日期/时间为long毫秒值。

使用此代码,它将工作:

 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。 转到Properties和dateFormatString。 设置此格式:dd-MM-yyyy。