日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java.util.Date类型的转化成为数据库中的Date类型。

發布時間:2024/9/27 java 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java.util.Date类型的转化成为数据库中的Date类型。 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最完整的一個網頁:http://www.zxbc.cn/html/20080905/65272.html

?

作者:天涯 來源:中國自學編程網 發布日期:1220576012
在JDK 1.1后,java.util.Date 類型的大多數方法已經不推薦使用了。代替它的是Calendar。

而在java.sql.Date 和 java.util.Date之間,有些微妙的關系。

如何將Date類型插入數據庫中,成為好多人的一個不小的障礙。

當然,并不一定要在外部插入時間,因為在數據庫中,可以讓它自動插入,比如:MSSQL里面,用getdate()來插入當前時間,而在Insert時,便可以不用管它了。但有的時候還是避免不了,要手工插入時間,以更新數據庫。

1、java.util.Calendar 格式化時間

Calendar cal = new GregorianCalendar();
int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH)+1;
int day = cal.get(Calendar.DAY_OF_MONTH);
int dayOfWeek = cal.get(Calendar.DAY_OF_WEEK);
String week = "";
switch(dayOfWeek) {
case 1:
week = "星期天"; break;
case 2:
week = "星期一"; break;
case 3:
week = "星期二"; break;
case 4:
week = "星期三"; break;
case 5:
week = "星期四"; break;
case 6:
week = "星期五"; break;
default:
week = "星期六"; break;

int hour = cal.get(Calendar.HOUR_OF_DAY); // 24小時制
// int hour = cal.get(Calendar.HOUR); // 12小時制
int minute = cal.get(Calendar.MINUTE);
int second = cal.get(Calendar.SECOND);
String h,m,s;
if(hour<10) h = "0"+hour; else h = hour+"";
if(minute<10) m = "0"+minute; else m = minute+"";
if(second<10) s = "0"+second; else s = second+"";

在JSP中輸出是:

今天是: <%=year%>年<%=month%>月<%=day%>日<%=week%> <%=h%>:<%=m%>:<%=s%>

結果: 今天是: 2006年4月14日星期五 05:35:26

2、在數據庫中插入時間

PreparedStatement ps = con.prepareStatement("insert into TableName(dAddTime) values(?)");
這里有三種方式:
1) ps.setDate(1,new java.sql.Date(System.currentTimemillis()));
2) ps.setTime(2,new java.sql.Time(System.currentTimemillis()));
3) ps.setTimestamp(3,new java.sql.Timestamp(System.currentTimemillis()));
第一種只插入年月日 0000-00-00
第二種只插入時間 00:00:00
第三種則插入完整的時間 0000-00-00 00:00:00.000 .000是毫秒數。

3、取出數據庫時間

通常只有兩種:
1) getDate(String colname); // 取出日期 格式:0000-00-00
2) getTimestamp(String colname); // 取出日期和時間 格式:0000-00-00 00:00:00.000
3) getTime(String colname); // 只取出時間部份 格式:00:00:00 幾乎不用,因為沒有人只會取出時間,而不用日期。
0 頂一下
?
相關文章關于 JAVA操作數據庫Datetime數據
·在高級的復制中切換主體定義站點
·PostgreSQL 自動Vacuum配置
·如何批量刪除數據庫中被注入的代碼?
·如何更改數據庫狀態的事務終止
·數據庫觸發器(Trigger)的一點使用心得
·從IO看數據庫底層實現原理

?

?

方法1

SimpleDateFormat?s?=?new?SimpleDateFormat("yyyy/MM/dd");????????? Date?d?=?s.parse("1987/01/13");??

java.sql.Date date = new java.sql.Date(d.getTime());

?

String dateStr = "2009-11-21";
java.sql.Date date = new java.sql.Date();
date.valueOf(dataStr);

?

?

?

首先加入import java.util.Date頭文件

然后用

darr.setsDate(rs.getTimestamp("存儲時間"));

獲取準確的時分秒時間,而后進行轉換

new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ").format(dArr.getsDate())

將其轉換為24小時進制的年月日時分秒數據即可!對于12小時的只需要將上句改為:

new SimpleDateFormat("yyyy-MM-dd hh:mm:ss ").format(dArr.getsDate())

即可

已經過測試成功讀取:2012-05-23 16:26:54

?

?

?

測試數據庫:

/*
SQLyog Ultimate - MySQL GUI v8.2
MySQL - 5.1.55-community
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;

create table `datedemo` (
?`id` varchar (96),
?`datedemo` timestamp
);

?

?

package cn.itcast.utils;

import java.text.SimpleDateFormat;
import java.util.Date;

import org.apache.commons.dbutils.QueryRunner;
import org.junit.Test;

public class DaoDemo {

?@SuppressWarnings("static-access")
?@Test
?public void testDateOperation() throws Exception {
??QueryRunner runner = new QueryRunner(new JdbcUtils().getDataSource());
??
??String sql = "insert into datedemo(id,datedemo) values(?,?)";
??String dateString = "2009-10-01 05:35:26";
??SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
??//SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
??Date date = simpleDateFormat.parse(dateString);
??runner.update(sql,new Object[]{"1",new java.sql.Timestamp(date.getTime())});
??//runner.update(sql,new Object[]{"1",new java.sql.Time(date.getTime())});
??//runner.update(sql,new Object[]{"1",new java.sql.Date(date.getTime())});
?}
}

總結

以上是生活随笔為你收集整理的Java.util.Date类型的转化成为数据库中的Date类型。的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。