JDBC关于时间的存取
Oracle数据库默认时间存储是java.sql.date,⽽java程序中的时间默认是java.util.date,所以通过JDBC存取的时候会涉及到时间的转换问题。
1、⽇期存取
  存⼊数据库的时候,先⽤SimpleDateFormat sbf = new SimpleDateFormat("yyyy-MM-dd ");
  进⾏格式转换,然后⽤Date d = sbf.parse(birthday);
  即将字符串转换成util.date类型
  stm.setDate(4, new java.sql.Time()));
  即⽤PreparedStatement替换Sql语句中的问号时转换成数据库默认存储的Date类型。
  取出时间的时候直接⽤ Date d = rs.getDate("birthday");
  即取出集装箱的数据。
2、时间存取
  数据库中默认不存储具体时间,所以要⽤到时间戳Timpstamp类来处理
  存⼊时间的时候,先⽤SimpleDateFormat sbf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  进⾏格式转换,然后⽤Date d = sbf.parse(birthday); 即将字符串转换成util.date类型
  stm.setTimestamp(4, new java.sql.Time()));这样⽇期和时间都可以⼀起存⼊数据库
  取数据的时候直接⽤ Date d = rs.getTimestamp("birthday");就可以了
说明:由于JDBC属于数据访问层,它是为上⼀层(业务逻辑层)提供服务的,业务逻辑层⼀般不与SQL打交道,因此在业务逻辑层是不会* ⽤到java.sql包中的任何类。例如:本⽅法是返回记录的出⽣⽇期,即Date类型,将来该⽅法是在业务逻辑层调⽤的,所以该
* ⽅法返回的Date类型应该是java.util包中的Date类,所以需要在该⽅法内部实现java.sql.Date与java.util.Date之间
java时间日期格式转换
* 的转换⼯作

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。