用简单的servlet做的插入数据  
想把系统时间插入oracle的一个表的字段  我取时间语句为:
java.sql.Date date = new java.sql.Date(new Date().getTime());预编译语句对象st
st.setDate(4,date)
插入表中的数据为2009-08-25我想要插入的时间的格式为:2009-08-25 15:30:10这种形势怎么改我的取时间语句啊 ?

解决方案 »

  1.   

    java.text.SimpleDateFormat datetemp = new java.text.SimpleDateFormat("yyyy-MM-dd");String time = datetemp.format(new java.util.Date());st.setString(time);
      

  2.   

    改为:
    java.sql.Timestamp date = new java.sql.Timestamp(new Date().getTime());
      

  3.   

    楼上的这样不行 我试过了 我数据库的表里是date类型  st.setString(time);的话sql报错的  类型不匹配  必须取出Date的 只是Date格式不是我想要的
      

  4.   

    可以直接在SQL语句里面插入,ORACLE有sysdate关键字的,为当前系统时间
    insert(date) values(sysdate)
      

  5.   


    Timestamp
    @Deprecated
    public Timestamp(int year,
                                int month,
                                int date,
                                int hour,
                                int minute,
                                int second,
                                int nano)已过时。 使用构造方法 Timestamp(long millis) 来代替 构造一个 Timestamp 对象,使用给定值对其进行初始化。 参数:
    year - 年减去 1900
    month - 0 到 11
    date - 1 到 31
    hour - 0 到 23
    minute - 0 到 59
    second - 0 到 59
    nano - 0 到 999,999,999 
    抛出: 
    IllegalArgumentException - 如果毫微参数超出范围--------------------------------------------------------------------------------Timestamp
    public Timestamp(long time)使用毫秒时间值构造 Timestamp 对象。整数秒存储在底层日期值中;小数秒存储在 Timestamp 对象的 nanos 字段中。 参数:
    time - 自 1970 年 1 月 1 日 00:00:00 GMT 以来的毫秒数。负数表示 1970 年 1 月 1 日 00:00:00 GMT 之前的毫秒数。
    另请参见:
    Calendar
      

  6.   

    好用了  谢谢大家了 5楼说的我怎么没想到啊  我改为java.sql.Timestamp了  去试试5楼的