java.util.Date是在除了SQL语句的情况下面使用的。java.sql.Date是针对SQL语句使用的。
java.util.Date 类型写到数据库后存储的值可以到秒,java.sql.Date 类型的写入后只能到日期。
java.util.Date 是 java.sql.Date 的父类,前者是常用的表示时间的类,我们通常格式化或者得到当前时间都是用他,后者之后在读写数据库的时候用他,因为PreparedStament的setDate()的第2参数和ResultSet的getDate()方法的第2个参数都是java.sql.Date。
直接上实验代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| import java.io.File; import java.sql.Date; import java.text.SimpleDateFormat;
public class Test {
public static void main(String[] args) throws Exception { java.util.Date nowUtil =newjava.util.Date(); java.sql.Date nowSql=newjava.sql.Date(System.curretTimeMillis()); SimpleDateFormatformat=newSimpleDateFormat("yyyy-MM-dd HH:mm:ss"); System.out.println(format.format(nowUtil)); System.out.println(format.format(nowSql)); System.out.println(nowUtil); System.out.println(nowSql); } }
|
以上代码输出结果:
2017-11-13 14:10:03
2017-11-13 14:10:03
Mon Nov 13 14:10:03 CST 2017
2017-11-13