java 时间代码【原创】

 环境:
  在java中使用Date时,代码中需要使用java.util.Date包,但是sql语句是使用java.SQL.Date包的,所以如果在java代码中写sql date类型,需要进行转换。  
  java代码中需要导入 import java.util.Date 包。


  分析:
  
  1. 将传入的字符串拼接成完整的月份。
    String sbrq_q = sbrq + "-01";
   String sbrq_z = sbrq + "-31";

    传入的是2005-08 ,经拼接变成 2005-08-01这样。


  2. 将时间字符串转换成java.util.Date类型时间
   需要导 import java.text.DateFormat 包,注意"yyyy-MM-dd" 这里的MM不能小写,否则月份会变成一月。

    DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");
   try {
    date_sbrq_q = format1.parse(sbrq_q);
    date_sbrq_z = format1.parse(sbrq_z);
   } catch (ParseException e1) {
    e1.printStackTrace();
   }
  
  3. 将java.util.Date类型时间转换成java.SQL.Date类型时间
   java.sql.Date dateTime_q = new java.sql.Date(date_sbrq_q.getTime());
   java.sql.Date dateTime_z = new java.sql.Date(date_sbrq_z.getTime());

  

  4. 把java.SQL.Date时间替换成PreparedStatement语句中,并执行

   String sql = "SELECT t1.*,t2.*,t3.zsxm_jc FROM ls_sbxx t1,ls_sbsmxx t2,dm_gy_zsxm t3 WHERE " +
     "t1.nsrsbh = ? AND t1.sbrq >= ? AND t1.sbrq <= ? " +
     "AND t2.zsxm_dm = t3.zsxm_dm AND t1.pzxh = t2.sbxx";
  
   ps = con.prepareStatement(sql);
   ps.setString(1, nsrsbh);
   ps.setDate(2, dateTime_q);
   ps.setDate(3, dateTime_z);
   rs = ps.executeQuery();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值