根据月份查询记录

/**
     * 根据月份返回对应的当月第一天的时间戳
     * @param monthStr    格式:yyyyMM
     * @return
     */
    private long getFirstDayTimestamp(String monthStr) {
        
        if (StringUtils.isEmpty(monthStr))
            return 0;
        
        monthStr = monthStr + "01000000";    //当月的第一天(14位)
        
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
        try {
            return sdf.parse(monthStr).getTime();
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        return 0;
    }
    
    /**
     * 根据月份返回对应的当月最后一天的时间戳
     * @author 初。
     * @param monthStr    格式:yyyyMM
     * @return
     */
    private long getLastDayTimestamp(String monthStr) {
        
        if (StringUtils.isEmpty(monthStr))
            return 0;
        
        Calendar cal = Calendar.getInstance();
        //设置年份
        cal.set(Calendar.YEAR, Integer.parseInt(monthStr.substring(0, 4)));
        //设置月份
        cal.set(Calendar.MONTH, Integer.parseInt(monthStr.substring(4, 6)) - 1);
        //获取某月最大天数
        int lastDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
        //设置日历中月份的最大天数
        cal.set(Calendar.DAY_OF_MONTH, lastDay);
        //格式化日期
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
        String lastDayOfMonth = sdf.format(cal.getTime()) + "235959";    //最后一天的时间(14位)
        
        sdf = new SimpleDateFormat("yyyyMMddHHmmss");
        try {
            return sdf.parse(lastDayOfMonth).getTime();
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        return 0;
    }

posted @ 2017-08-16 10:58  小明珠  阅读(407)  评论(0编辑  收藏  举报