给你一个用java方法转换的例子import java.text.SimpleDateFormat;
import java.text.ParseException;
import java.util.Date;
import java.util.Locale;public class dataTest
{
    protected static SimpleDateFormat dateFormat = null;    static {
dateFormat = new SimpleDateFormat("", Locale.getDefault());
}    
    public static Date parseDate(String date) throws ParseException {
try {
  return parseDate(date, "yyyy/MM/dd");
}
catch (ParseException e) {
  throw e;
}
}
public static Date parseDate(String date, String pattern) throws ParseException {
synchronized (dateFormat) {
dateFormat.applyPattern(pattern);
return dateFormat.parse(date);
}
}
public static void main (String[] args) 
{
Date kkk = new Date();
try {
kkk = parseDate("2000/02/02");
}
catch (ParseException e) {
System.out.println("parseDate Failed!");
}
System.out.println(kkk);
}
}

解决方案 »

  1.   

    你说的是数据库中vchar和date类型吧?
    前者对应java中的String
    后者对应java中的Timestamp
    应该做一个将String转换成Timestamp的方法
    public static Timestamp toTimestamp(String str)
          throws ParseException
       {
          try
          {
            if(str == null || "".equals(str.trim()))
                return null;
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd H:mm:ss");
            java.util.Date dd1 = df.parse(str);
             Calendar cal = Calendar.getInstance();
             cal.setTime(dd1);
             java.util.Date dt = cal.getTime();
            
             long lDtm = dt.getTime();
             return new java.sql.Timestamp( lDtm );
          }
          catch(ParseException e)
          {
            throw new ParseException("You should pass the String like this:2001-4-5 21:11:11", 1);
          }
       }
      

  2.   

    from JIVE the date type in database schema:
    --
      time          VARCHAR(15),
    get time from db:
    --
      time = new Date(Long.parseLong(rs.getString("time").trim()));
    set time into db:
    --
      pstmt.setString(1, ""+usetime.getTime());
    that's all.