日期不能转换为适合JDateChooser

时间:2014-03-08 09:23:28

标签: netbeans

Hello Guys我遇到了从Ms access DB到JDateChooser检索的转换日期问题,但是有一条消息告诉我java.util.Date无法转换为java.util.Date ..

String sql="select * from Patient where PatientID=?";    try{
       ps=con.prepareStatement(sql);
       ps.setString(1, txt_PID.getText());
       rs=ps.executeQuery();
       if(rs.next()){
        //   String add1=rs.getString("PatientID");
          // txt_PID.setText(add1);
            String add2=rs.getString("PatientName");
           txt_PName.setText(add2);
            String add3=rs.getString("PatientGender");
           cmb_PGender.setSelectedItem(add3);
            String add4=rs.getString("PatientAge");
           txt_PAge.setText(add4);
            String add5=rs.getString("PatientType");
           cmb_PType.setSelectedItem(add5);
            String add6=rs.getString("PatientGSM");
           txt_PGsm.setText(add6);
           String add7=rs.getString("Patient_Maj_Jop");
           txt_major_Jop.setText(add7);

           DateFormat formatter ;
            Date  date1; 
           String add8=rs.getString("DateOfReg"); 
            formatter = new SimpleDateFormat("MMM d, yyyy");   
            date1 = (Date)formatter.parse(add8); 
            dch_Date.setDate(date1);


           table_PatuentReg.setModel(DbUtils.resultSetToTableModel(rs));  
       }    }catch(Exception e){    JOptionPane.showMessageDialog(null, e.getMessage());

   }
    if(txt_PID.getText().equals("")){
           Update_Table();
       }

1 个答案:

答案 0 :(得分:0)

不看date1变量,我猜你可能在使用java.sql.Date?检查你确实在使用java.util.Date。

向我们展示您的进口报表。

问题在于这一行,因为DateFormatter正在返回一个java.util.Date的实例,而你正试图将它转换为java.sql.Date,而不是。

            date1 = (Date)formatter.parse(add8); 

简单修复就是导入java.util.Date。我没有看到您需要使用java.sql.Date,因为您没有获取Date SQL列,是吗?