java日期数据处理以及数据库保存备忘录

java日期数据处理以及数据库保存备忘录,第1张

java日期数据处理以及数据库保存备忘录

【本文用于自己学习新纪录,有不对的地方欢迎指正,我会一起修改,一起进步O(∩_∩)O~】

日期格式 代码说明java.util.Date sysDate = new java.util.Date();获取系统时间,我一般用这个java.sql.Timestamp date = new java.sql.Timestamp(sysDate.getTime());这个得到时间搓2021年3月5日10:09:04.092
这里秒后面还有时间,有时候很麻烦java.sql.Time data = new java.sql.data();这个得到的时间是:2021年3月5日java.sql.Date date = new java.sql.Date(sysDate.getTime());这个得到的时间是:2021年3月5日 格式转化 要将 java.util.Date 转换为 java.sql.Date,下面就是示例代码
	java.util.Date utilDate = new java.util.Date();
	java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());
	// 但是这个精度只有:2021年3月5日
要将 java.util.Date 转换为 timestamp,下面就是示例代码
	java.util.Date utilDate = new java.util.Date();
	Timestamp time = new Timestamp(utilDate.getTime());
将String转换为java.util.Date:
	Date date = new SimpleDateFormat("yy-MM-dd").parse(dateString);
Timestamp转换成String:
组合写法:
	(new Timestamp(date.getTime())).toString();
	赋值时候可以:statement.setTimestamp(index++, new Timestamp(date.getTime()));
分开写:
	Timestamp ts = new Timestamp(System.currentTimeMillis());
	String tsStr = ts.toString();
    System.out.println(tsStr);
	赋值时候可以: statement.setString(index++, (new Timestamp(date.getTime())).toString());
数据库中保存 oracle
  1. 需求:存入数据库,格式:DATE,大小:7.
    实现:

    java.util.Date sysDate = new java.util.Date();
    java.sql.Timestamp date = new java.sql.Timestamp(sysDate.getTime());
    // 因为比如2021年3月5日10:09:04.092后面的.092会导致数据库报错,所以用string方法把它去掉
    // 这里应该有简单方法,但是我弄了半天没弄出来,只好用最蠢方法
    String dateString = date.toString();
    Integer endLenth = dateString.indexOf(".");
    dateString = dateString.substring(0,endLenth); 
    // 保存数据
    String sql = "insert into aaa(CREATE_DATE) values (To_Date('"+dateString+"','yyyy-mm-dd hh24:mi:ss'))"
    test.query(sql.toString());
    
SqlServer
  1. 使用:PreparedStatement,存入数据库
String sql = "INSERT INTO Customer(CustomerID,name,Editdate) VALUES (?,?,?);";
statement = connection.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);//预处理sql语句

//不允许自动提交数据
connection.setAutoCommit(false);

Date utilDate = new Date();//java.util.Date
for(int i=1;i<=1;i++) {
    statement.setString(1, "id-shaye"+i);
    statement.setString(2, "name"+i);
    statement.setTimestamp(3, new Timestamp(utilDate.getTime()));
    statement.addBatch();//使用批处理Batch来暂存数据
    if(i%500 == 0) {//再一起放到数据库里
        statement.executeBatch();
        statement.clearBatch();
    }
}

statement.executeBatch();
statement.clearBatch();
//最后统一提交数据
connection.commit();
statement.close();// 关闭statement,释资源
页面数据传递

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5597434.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存