日期:2014-05-16 浏览次数:20456 次
最完整的一个网页:http://www.zxbc.cn/html/20080905/65272.html
作者:天涯 来源:中国自学编程网 发布日期:1220576012 | ||||||
而在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 几乎不用,因为没有人只会取出时间,而不用日期。 |
||||||
|
||||||
|