您的位置:首页 > 其它

string与date与Timestamp相互转化…

2016-01-21 10:21 405 查看
个人官方网站 :点击进入 一:string与date的相互转化1.1 String -> Date//String -> Datepublic static void main(String[] args) throws Exception
{//指定要转换成日期的格式DateFormat dfm = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
  String dateStr = "2015/12/21 12:34:23"; //
 自定义的日期格式     
  Date date;       
       
       
   //注意dfm的格式要与自定义的格式相匹配
       
      date =
dfm.parse(dateStr);
       
     
System.out.println(date.toString()+"\n 转换后的类型为:"+date.getClass());
  }



  1.2 Date -> String



 



 二、String与Timestamp互转    
2.1 String ->Timestamp 
 // String
-> Timestamp
public
static void main(String[] args) throws Exception
{
  
Timestamp ts = new Timestamp(System.currentTimeMillis());
  
 
      String
tsStr = "2015-12-21 11:49:45";
   
    
 
   
  
 
     
    ts =
Timestamp.valueOf(tsStr);
  
 
     
 
  
 
     
   
System.out.println(ts.toString()+"\n
转换后的类型为:"+ts.getClass()); 
 
     
   
  
   
  
}

 

 
     
2.2 Timestamp -> String  
使用Timestamp的toString()方法或者借用DateFormat //Timestamp  -> Stringpublic static void main(String[] args) throws Exception
{Timestamp ts = new Timestamp(System.currentTimeMillis());
       
  String tsStr = "";
       
  DateFormat sdf = new
SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
       
      //方法一
       
      tsStr =
sdf.format(ts);        
     
System.out.println(tsStr.toString()+"\n
转换后的类型为:"+tsStr.getClass());      
   
       
   
       
     
System.out.println("----------------------------------");     
      //方法二
       
      tsStr =
ts.toString();        
   
       
   
       
     
System.out.println(tsStr.toString()+"\n
转换后的类型为:"+tsStr.getClass());      
     
      
   
  }
 
很容易能够看出来,方法一的优势在于可以灵活的设置字符串的形式。


三、Date( java.util.Date )和Timestamp互转  
声明:查API可知,Date和Timesta是父子类关系    
父类不能直接向子类转化,可借助中间的String~~~~  java.sql.Date
只存储日期数据不存储时间数据
//
会丢失时间数据
preparedStatement.setDate(1, new
java.sql.Date(date.getTime()));
//可以这样来处理
preparedStatement.setTimestamp(1,
new
java.sql.Timestamp(new
java.util.Date().getTime()));//想要得到完整的数据,包括日期和时间,可以这样java.util.Date d = resultSet.getTimestamp(1);//这样处理更合适一些,可以避免一些潜在Timestamp 问题java.util.Date d = new
java.util.Date(resultSet.getTimestamp(1).getTime());自己补的话这样的话:       
往数据库存储的时候可以接收 java.util.Date类型
再用getTime()方法得到代表那个Date对象的long值,再以这个long值 构造一个Timestamp对象
存进数据库中。      
从存数据库里取的时候,可以先得到Timestamp用他的getTime()方法得到long值,再以这个long值构造一个java.util.Date对象,这样就可以对这个Date对象操作了。不如说
new SimpleTimeFormat("yyyyy-MM-dd HH:mm:ss").format()等等好了
   date     Timestamp
    String 类型转换介绍完毕有问题发我邮箱
  1360461332@qq.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: