例如:我数据库里有个时间是2008-05-10    我用java.sql.Date today = new java.sql.Date(System.currentTimeMillis()); 得到今天的时间。我怎么去比较呢? 我要做如果今天的时间大于数据库的时间我就去new 一个东西 。 请问该怎么做哦!!拜托拉各位。

解决方案 »

  1.   

    使用date1.compareTo(Date date2)方法比较日期大小咩.
      

  2.   

    既然你的数据库里面的时间格式是:2008-05-10你可以取得现在系统的时间(怎么取得,楼主应该明白吧),把取得的时间转化成数据库中的格式:YYYY-MM-DD1.这样可以当成字符串来比较他们了。
    或者:
    2.把两个时间去掉其中的-,转化成long型,再比较。
      

  3.   


       Date date1=new Date();
            Date date2=new Date();
            date1.after(date2);  boolean
            date1.before(date2); boolean   
            int compare=date1.compareTo(date2);
            compare=-1   <  
         compare=      = 
         compare=1      >
                                            
      

  4.   


    Calendar c1 = Calendar.getInstance();
            Calendar c2 = Calendar.getInstance();
            c1.setTimeInMillis(System.currentTimeMillis());
            SimpleDateFormat sm = new SimpleDateFormat("yyyy-MM-dd");
            c2.setTime(sm.parse("2008-05-10"));
            System.out.println(c1.compareTo(c2));//返回-1,0,1,-1表示c1小于c2!其他的自己想把
      

  5.   

    如果是sql中写的话我有一个mysql 例子 这是一个Calendar c1 = Calendar.getInstance();
    SimpleDateFormat sm = new SimpleDateFormat("yyyy-MM-dd");
    String queryString = "select * from table where  TO_DAYS('"+sm.format(c1.getTime())+"')>TO_DAYS(now()) order by a.act.beginTime";
      

  6.   

    Date d = new Date();
    SimpleDateFormat sm = new SimpleDateFormat("yyyy-MM-dd");
    System.out.println(sm.format(d).equals("2008-05-10"));