从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。