Java和mySql间date数据的注意

已经吃了很多次亏了…每每其他调试得得意满满的时候就出来捣乱了
首先是在java中 date和string类型之间的转换就容易出错
直接使用toString默认输出的是
/* Date类的格式: Sat Apr 16 13:17:29 CST 2006 /
data->string

public static String DatetoString(Date dt){
        DateFormat df=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
        String myD=df.format(dt);
        return myD;
    }
string->date
public static Date Trans(String str)
    {
        DateFormat df=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
        Date d=null;
        try {
            d=df.parse(str);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        if(d==null)
        {System.out.println("格式输入失败");}
        else
        {
            System.out.println("格式转换成功  "+d);
        }
        return d;
    }
其中,yyyyMMddHHmmss表示年月日时分秒不可以随便代替 其中可以加入: / - 空格等一切你想塞入的符号 这是月份的表示 其中月份是从0开始的
Calendar cal = Calendar.getInstance();  
cal.setTime(new Date());  
System.out.println("System   Date:   " + cal.get(Calendar.MONTH + 1));
以下是mysql和java之间传值转化的类 MySql的时间类型有 Java中与之对应的时间类型 date java.sql.Date datetime java.sql.Timestamp timestamp java.sql.Timestamp time java.sql.Time year java.sql.Date
/获得系统时间  
java.util.Date date = new java.util.Date();  
//将时间格式转换成符合Timestamp要求的格式  
String nowTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);  
java.sql.Timestamp ts_date = java.sql.Timestamp.valueOf(nowTime)  
TimeDate->String
Timestamp ts = new Timestamp(System.currentTimeMillis());  
        String tsStr = "";  
        DateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");  
        try {  
            //方法一  
            tsStr = sdf.format(ts);  
            System.out.println(tsStr);  
            //方法二  
            tsStr = ts.toString();  
            System.out.println(tsStr);  
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
TimeDate->Date
Timestamp ts = new Timestamp(System.currentTimeMillis());  
        Date date = new Date();  
        try {  
            date = ts;  
            System.out.println(date);  
        } catch (Exception e) {  
            e.printStackTrace();  
        } 

热评文章