首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在java eclipse中使用jdatechooser更新日期

如何在java eclipse中使用jdatechooser更新日期
EN

Stack Overflow用户
提问于 2017-04-23 11:10:03
回答 1查看 1.2K关注 0票数 1

当我尝试用jdatechooser更新日期时,数据库日期不能保存在数据库中,在数据库日期中,不像我在MM/dd/yyyy保存的数据库日期中更新02/08/2014那样只显示日期格式?我正在使用sqlite数据库和eclipse juno。

代码语言:javascript
运行
复制
            try{
                String t10= comboBoxGen.getSelectedItem().toString();
                String JD= dateChooser.getDateFormatString();

                String t1= textFieldID.getText();
                String t2= textFieldFN.getText();
                String t3= textFieldLN.getText();
                String t4= textFieldCN.getText();
                String t5= textFieldAge.getText();
                String t6= textFieldDep.getText();
                String t7= textFieldMob.getText();
                String t8= textFieldSal.getText();
                String BD= dateChooser1.getDateFormatString();
            //  String t9= textFieldBD.getText();
            //  String t10= textFieldGen.getText();
                String t11= textFieldAdd.getText();
                String t12= textFieldPos.getText();
            //  String t13= textFieldJD.getText();

                if(t1.length()>4 || t1.length()==0  || t2.length()==0 || t3.length()==0 || t4.length()==0 || t5.length()==0 || t6.length()==0 || t7.length()==0 || t8.length()==0 || BD.length()==0 || t10.length()==0 || t11.length()==0 || t12.length()==0 || JD.length()==0 ){
                    JOptionPane.showMessageDialog(null, "Please fill the fields or correct filled","Error", JOptionPane.ERROR_MESSAGE);
                }
                else{
                    String query3="Update Teachers set TeacherID='"+textFieldID.getText()+"', FirstName='"+textFieldFN.getText()+"', LastName='"+textFieldLN.getText()+"', CNICNO='"+textFieldCN.getText()+"', Age='"+textFieldAge.getText()+"', Salary='"+textFieldSal.getText()+"', MobileNo='"+textFieldMob.getText()+"', Gender='"+t10+"', Department='"+textFieldDep.getText()+"', Position='"+textFieldPos.getText()+"', Address='"+textFieldAdd.getText()+"', JoinDate='"+JD+"', BirthDate='"+dateChooser1.getDateFormatString()+"'  where TeacherID='"+textFieldID.getText()+"' ";      
                    PreparedStatement pst= connection.prepareStatement(query3);

                int action = JOptionPane.showConfirmDialog(null, "Do you want Update this Data?","Update Confirmation",JOptionPane.YES_NO_OPTION);
                if (action==0){
                pst.execute();
                }
                JOptionPane.showMessageDialog(null, "Data Update");

                pst.close();

                }
            }catch(SQLException e){
                e.printStackTrace();
            }
        }
    });
    btnUpdateData.setBounds(399, 443, 105, 23);
    contentPane.add(btnUpdateData);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-23 12:23:33

您需要调用JDateChooser.getDate()来获取输入的日期。当然,这会返回一个java.util.Date,所以如果您真的想要的话,您需要采取一些额外的步骤将日期转换成字符串形式。

有一种方法可以做到:

代码语言:javascript
运行
复制
java.util.Date dt = dateChooser1.getDate();
String BD = "" +
    (dt.getMonth() + 1) +
    "/" +
    dt.getDate() +
    "/" +
    (1900+  dt.getYear();

这里有一个更漂亮的方法:

代码语言:javascript
运行
复制
String BD = (new java.text.SimpleDateFormat("MM/dd/yyyy"))
    .format(dateChooser1.getDate());

你选吧..。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43570384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档