java中的毫秒和SimpleDateFormat和JXDatepicker冲突

时间:2014-03-07 08:53:42

标签: java date

在我目前的项目中,我将以毫秒为单位保存日期:

  long f = jXDatePicker1.getDateInMillis();
  //Data is saved in database.

接下来我正在写一个这样的查询:

  long firstDate =  jXDatePicker1.getDateInMillis();
  long secondDate =  jXDatePicker2.getDateInMillis();

  Calendar cal = Calendar.getInstance();
  Calendar cal2 = Calendar.getInstance();

DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
int rows = model.getRowCount();
if (rows>0){
for(int i=0 ; i<rows; i++)
{model.removeRow(0);}}

String query = "SELECT CODE, AD_DATE, EX_DATE, PLAN_NAME, AMOUNT, DISCOUNT, TOTAL"
        + " FROM ADMISSION_MASTER WHERE AD_DATE>="+firstDate+" AND AD_DATE<="+secondDate+" ";

try{
    conn = new data.connection().db();
    stmtt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
    rs = stmtt.executeQuery(query);
    while(rs.next()){
        long F = rs.getLong("AD_DATE"); cal.setTimeInMillis(F);
        long T = rs.getLong("EX_DATE"); cal2.setTimeInMillis(T);
        String frm = sdf.format(cal.getTime());
        String too = sdf.format(cal2.getTime());
        model.addRow (new Object[]{rs.getString(1), frm, too, rs.getString(4), rs.getString(5), rs.getString(6), rs.getString(7)});

    }}
 catch(SQLException ex){}
 finally{try{stmtt.close(); rs.close(); conn.close();}
 catch(SQLException ex){}

现在我在JXDatePicker中选择日期。第一日= 2014年3月5日第二日:2014年3月6日。

我从未在3月6日获得jtable。我将选择2014年3月7日的3月6日展示。  我认为这是发生在时区。如何解决这个问题?请帮忙。

0 个答案:

没有答案