有关日期参数匹配数据库数据的方法
来源:互联网 发布:淘宝代销商品怎么刷单 编辑:程序博客网 时间:2024/05/16 15:07
应用场景:
从前台传来一个时间段:开始日期 start (如2012-11-05) , 结束时间 end(如2012-11-15), 从数据库查询 从日期 start 到 日期end 之间所有符合条件的数据集合,返回一个 List 对象
例如:
/** * 返回指定 观测站某时间段内每天8时的水位集合 */@Overridepublic List getDataByStartAndEndTime(String id, String start, String end) {String time = "08";String startDate = start + " " + time +":00:00";String endDate = end + " " + time +":00:00";String sql = "select stcd, to_char(tm, 'YYYY-MM-DD') tm, rz from st_rsvr_r where stcd = ? and tm <= to_date( ? , 'YYYY-MM-DD hh24:mi:ss') and tm > to_date( ? , 'YYYY-MM-DD hh24:mi:ss') and to_char(tm, 'hh24')= ? order by tm ";return getJdbcTemplate().queryForList(sql, id, startDate, endDate, time);}
返回List之后,需要将日期start 到end 之间的某个日期与数据库查询出来的List对象中某个日期进行匹配,new一个数组,数组值依次表示 日期start到end 每日8时的水位值,如果数据库中没有某个日期的记录,那么这天的水位值存为0,方法如下 :(其中startdata1 对应 结束日期 end , enddata 对应 开始日期 start)
/** * 返回带参某水库水位数据源 * @param startdata1 开始日期 * @param enddata 结束日期 * @param num * @return */private double[] getWaterLineHelp(String id, String startdata1, String enddata, int num) {Map<String, String> resultMap = new HashMap<String, String>();double[] getd = new double[num];List<Map> list = stRsvrRDao.getDataByStartAndEndTime(id, startdata1, enddata);if (null != list && !list.isEmpty()) {for(int i=0; i<list.size(); i++){Map map = list.get(i);resultMap.put(map.get("TM") + "", map.get("RZ") + "");}}if (null != getd && getd.length > 0) {for (int i = 0; i < getd.length; i++) {String key = DateUtils.getNextDay2(enddata, i+1 + "");if (resultMap.containsKey(key)) {getd[i] = Double.parseDouble(resultMap.get(key));} else {getd[i] = 0;}}}return getd;}
如上代码,遍历List 用Map对象map接收,然后将这个map对象中的日期和水位存入另一个Map对象resultMap中, 然后从开始日期 enddata依次延后 ,跟resultMap对象中的key值匹配,如果相等,就表示这个日期存有水位值,赋值就好;如果没有匹配上,表示数据库没有这个日期的记录,赋值为0;
效果如下:
- 有关日期参数匹配数据库数据的方法
- java--有关日期的工具方法
- 在数据库中查询特定日期数据的方法
- Mybatis从数据库中取日期类型数据的方法
- 有关Servlet初始化参数的获取方法
- 日期类型匹配方法
- C#中有关数据库的数据转换
- 日期有关的查询
- 有关日期计算的二个常用方法
- C#与日期有关的字符串格式化方法
- 数据库日期参数转换
- 【转】和Oracle数据库的参数有关的几个试图
- sql语句获取日期大于当前日期的数据库数据
- (3.1.2.2)有关Servlet初始化参数的获取方法
- 有关字符串匹配的算法
- 数据库日期格式为datetime时,存储日期的方法
- sql有关日期的实现
- sql有关日期的实现
- 那些年朋友劝,该知道的ASP.NET -如何加密ASP.NET配置数据
- YII 数据库相关操作
- 狸窝视频转换器压制视频mp4格式使用的H.264编码器配置参数信息
- shell下的作业管理(转)
- android Settings中About Phone的Model number等信息的修改
- 有关日期参数匹配数据库数据的方法
- matlab中inline的用法
- 互联网史-chinaren与校内
- 冒泡排序
- c#数据库操作DataGridView控件的使用,ADO.NET
- SQL查询语句大全集锦
- BootStrap入门教程 (一)
- 一个老程序员对刚上大学的学弟学妹的忠告
- LeetCode Combination Sum