如何使用java在mysql中插入时间

如何使用java在mysql中插入时间,java,mysql,date,datetime,Java,Mysql,Date,Datetime,我正在做一个餐饮项目的招聘服务。他们希望保存客户租用其物品的日期和时间,也希望保存客户退回物品的日期和时间。当然,在运动日期或时间,这些都不是真实的。所以首先,我想找到一个方法来保存任何日期和时间。其他活动将在稍后讨论。所以我想出了一张小桌子。如下所示 ID | Name | Value | Date | Time (int) | (Varchar) |( Double) | (DateTime) | (DateTime) 我用这根绳子来保存数据 pri

我正在做一个餐饮项目的招聘服务。他们希望保存客户租用其物品的日期和时间,也希望保存客户退回物品的日期和时间。当然,在运动日期或时间,这些都不是真实的。所以首先,我想找到一个方法来保存任何日期和时间。其他活动将在稍后讨论。所以我想出了一张小桌子。如下所示

 ID   |  Name     |  Value   |    Date    |    Time
(int) | (Varchar) |( Double) | (DateTime) | (DateTime)
我用这根绳子来保存数据

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) 
{                                         
     String date=new SimpleDateFormat("yyyy-MM-dd").format(dat.getDate()); 
     String time = String.valueOf(dateSpinner.getValue()).split(" ")[3];

     try {                                                                                                                                                
         new JDBC().putData("INSERT INTO work (name, balance, date) VALUES ('"+txtName.getText()+"',"+txtValue.getText()+"', '"+date+"', '"+time+"') ");
         JOptionPane.showMessageDialog(null, "value saved");
     } catch (Exception e) {
         JOptionPane.showMessageDialog(null, this.getClass().getName() +" "+e);
     } 
}  
当我输入数据时,我有

Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 3" .
帮我找出这根线的错误,节省时间。实际上,我可以使用字符串日期变量保存任何日期。在向表中添加时间字段之前,我保存了一些演示数据。但是我在努力节省时间的时候遇到了这个问题。我使用日期微调器来节省时间。但我无法将其格式化为
HH-mm--ss
。如果你知道另一个节省时间的功能,请告诉我。请帮帮我

这一行:

String time = String.valueOf(dateSpinner.getValue()).split(" ")[3];
与此相同,仅在一行上完成

String[] splitArr = String.valueOf(dateSpinner.getValue()).split(" ");
String time = splitArr[3];
String[] splitArr = String.valueOf(dateSpinner.getValue()).split(" ");
for(int i = 0; i < splitArr.length; i++)
{
     System.out.println("Element number " + i + " is \"" + splitArr[i] + "\"");
}
您得到的错误是分割数组中没有4个元素。输入下面的一段代码来调试您得到的结果,这样您就知道这一行中发生了什么

String[] splitArr = String.valueOf(dateSpinner.getValue()).split(" ");
String time = splitArr[3];
String[] splitArr = String.valueOf(dateSpinner.getValue()).split(" ");
for(int i = 0; i < splitArr.length; i++)
{
     System.out.println("Element number " + i + " is \"" + splitArr[i] + "\"");
}
String[]splitArr=String.valueOf(dateSpinner.getValue()).split(“”);
对于(int i=0;i

然后可以适当地更新插入。很抱歉,我无法提供更多帮助,但我们不知道什么是
datespinner
,或者什么是
datespinner.getValue()
返回,因此请执行上述操作以帮助调试您的代码。

什么是
String.valueOf(datespinner.getValue()).split(“”).length
?或者更好的是,什么是
String.valueOf(dateSpinner.getValue())
?SQL语句中也有错误。您只定义了三列,但试图添加四个值。这一行有错误:
String time=String.valueOf(dateSpinner.getValue()).split(“”[3]索引[3]不存在。@lucian I将其更正为新的JDBC().putData(“插入工作(名称、余额、日期)值(“+txtName.getText()+”,“+txtName.getText()+”,“+date+”)”);所以我可以像以前一样保存我选择的日期。但是伙计们,如果我没有使用String time=String.valueOf(dateSpinner.getValue()).split(“”[3];我要用什么来节省我想要的时间。请给我解释一下。给出一个很好的选择来节省时间。@lucian我也删除了[3]。还有保存错误。