何必呢??
我自己做得时候全部是用String来读写写得时候
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String date=sdf.format(new Date());//得到时间
....
String sql="insert into tableName values('" + date + "');";读得时候
直接String date=rs.getString(..);

解决方案 »

  1.   

    其实把系统时间写入数据库我有个简单得办法
    不需要用java实现,直接用mysql得函数
    insert into tableName values( now() );//now()函数,默认格式就是yyyy-MM-dd HH:mm:ss
      

  2.   

    你的意思就是修改你的程序是吧
    java.util.Date dateTime=null;
      DateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",Locale.ENGLISH);  
      dateFormat.setLenient(false);
      try{
         dateTime=dateFormat.parse(str);
      }catch(Exception e)
      {
       e.printStackTrace();
       }
      return dateTime;);
      

  3.   

    不对,System.out.println(d)这样输出肯定是你那个结果因为这里调用的是Date类的toString()方法
      

  4.   

    第一次传的程序有误 下面是对的 但是仍然达不到我要的效果  请大侠们指教!!import java.text.*;
    import java.util.Locale;
    public class StringToDate
    {
      public final static java.sql.Date StrToDate(String str)
    {
    java.sql.Date dateTime=null;
      DateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss",Locale.ENGLISH);  
      dateFormat.setLenient(false);
      try{
        java.util.Date d=dateFormat.parse(str);
        dateTime=new java.sql.Date(d.getTime());
      }catch(Exception e)
      {
       e.printStackTrace();
       }
      return dateTime;
    }
      public static void main(String args[])
    {
       StringToDate std=new StringToDate();
       java.sql.Date d=StrToDate("1984-10-7 5:20:40");
       System.out.println(d);
    }
    }
      

  5.   

    不对,System.out.println(d)这样输出肯定是你那个结果因为这里调用的是Date类的toString()方法
      但是插入数据库的时候也是也是Sun Oct 07 05:20:40 CST 1984的格式 然后就报错 我是在insert语句里面这样写的String sql="insert into table1 values("+...+".. "+d+"..; d
    为java.sql.Date型的变量 而且两边没有单引号
      

  6.   

    看你DB中字段的类型,个人感觉是用String比较方便,在java中直接format之后保存即可;如果是time类型的字段,那就干脆用DB中的时间保存在记录中,不要通过java获得时间在向time类型的字段里面写。