• Calendar 对象的使用实例


    1.Calendar demo例子

    Java Calendar 类时间操作,示范代码。

    public class CalendarDemo {   
        private static SimpleDateFormat date_format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");   
        public static void main(String[] args) {   
               
            //获取calendar实例;   
            Calendar calendar = Calendar.getInstance();   
               
            //判断calendar是不是GregorianCalendar类的实例;   
            if(calendar instanceof GregorianCalendar){   
                System.out.println("属于GregorianCalendar类的实例!");   
            }   
               
            //从calendar对象中获得date对象,当前时间;   
            Date dates =  calendar.getTime();   
               
            //格式化时间;   
            String date_str= date_format.format(dates);   
            System.out.println(date_str);   
               
            //设置月份05;代表日历的月份6月,因为月份从0开始。   
            calendar.set(Calendar.MONTH, 05);   
               
            int months = calendar.get(Calendar.MONTH);   
            System.out.println(months);  //输出05;   
               
            //设置日期为2011-07-24 09:59:50   
            calendar.set(2011, 06, 24, 9, 59, 50);     
            String getDate = date_format.format(calendar.getTime());   
            System.out.println(getDate);   //输出2011-07-24 09:59:50;   
               
            //比较日前大小;   
            if(new Date().getTime() > calendar.getTimeInMillis()){   
                System.out.println("当前日期在后!");   
            }else{   
                System.out.println("当前日期在前!");   
            }   
               
            //设置当前时间为:2011-07-24 11:06:00   
            calendar.setTime(new Date());     
            int year   = calendar.get(Calendar.YEAR);   //获取年;   
            int month  = calendar.get(Calendar.MONTH);  //获取月;   
            int date   = calendar.get(Calendar.DATE);   //获取天;   
            int hour   = calendar.get(Calendar.HOUR);   //获取小时;   
            int minute = calendar.get(Calendar.MINUTE); //获取分钟;   
            int second = calendar.get(Calendar.SECOND); //获取秒钟;   
            int hour_of_day = calendar.get(Calendar.HOUR_OF_DAY);    //第几个小时,   
            int day_of_month  = calendar.get(Calendar.DAY_OF_MONTH); //这天,在一个月内是第几天.    
            int day_of_week = calendar.get(Calendar.DAY_OF_WEEK);    //这天,在一周内,是第几天.   
            int day_of_year = calendar.get(Calendar.DAY_OF_YEAR);    //这天,在一年内,是第几天。   
            int week_of_year = calendar.get(Calendar.WEEK_OF_YEAR);  //这周,在一年内是第几周;   
            int week_of_month = calendar.get(Calendar.WEEK_OF_MONTH);//这周,在这个月是第几周;以以星为标准;   
            int zone_offset = calendar.get(Calendar.ZONE_OFFSET);    //获取时区;   
            int day_of_week_in_month = calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH);  //某月中第几周,按这个月1号算,1号起就是第1周,8号起就是第2周。以月份天数为标准    
            int r = calendar.get(Calendar.AM_PM);   
            if(r==calendar.AM){   
                System.out.println("现在是上午");   
            }   
               
            if(r==calendar.PM){   
                System.out.println("现在是下午");   
            }   
            System.out.println("==================================================");   
            System.out.println(year);   
            System.out.println(month);   
            System.out.println(date);   
            System.out.println(hour);   
            System.out.println(minute);   
            System.out.println(second);   
            System.out.println(hour_of_day);   
            System.out.println(day_of_month);   
            System.out.println(day_of_week);   
            System.out.println(day_of_year);   
            System.out.println(week_of_year);   
            System.out.println(week_of_month);   
            System.out.println(zone_offset);   
            System.out.println(day_of_week_in_month);   
        }   
    }

    2.项目中应用

    @RequestMapping(method = RequestMethod.GET, produces = { "application/json" })
        @ResponseBody
        public ListWithTotalCount<AuctionsDTO> aucLotQuery(@ModelAttribute("selectedAgency") SysAgencyDto selectedAgency,
            int page, int rows, String order, String sort) {
            Pageable pageable;
            String agencyId = selectedAgency.getId().toString();
    
            if (sort != null && !sort.isEmpty()) {
                pageable = new PageRequest(page - 1, rows, Direction.fromStringOrNull(order), sort);
            } else {
                pageable = new PageRequest(page - 1, rows);
            }
    
            Calendar cal = Calendar.getInstance();
            cal.set(Calendar.HOUR_OF_DAY, 0);
            cal.set(Calendar.MINUTE, 0);
            cal.set(Calendar.SECOND, 0);
            cal.set(Calendar.MILLISECOND, 0);
            Date less = cal.getTime();
            cal.set(Calendar.HOUR_OF_DAY, 23);
            cal.set(Calendar.MINUTE, 59);
            cal.set(Calendar.SECOND, 59);
            cal.set(Calendar.MILLISECOND, 999);
            Date great = cal.getTime();
            Specification<Auction> spec = (root, query, cb) -> {
                List<Predicate> predicates = new ArrayList<Predicate>();
    
                if (agencyId != null && !agencyId.isEmpty() && !"0".equals(agencyId)) {
                    Predicate predicate = cb.equal(root.get(Auction_.agencyId), agencyId);
                    predicates.add(predicate);
                }
    
                Predicate published = cb.equal(root.get(Auction_.isPublished), Auction.AUCLOT_ISPUBLISHED_FINISH);
                predicates.add(published);
    
           //获取当天的检索条件 Predicate time
    =cb.between(root.get(Auction_.startTime),less,great); predicates.add(time); return cb.and(predicates.toArray(new Predicate[0])); }; Page<Auction> pageresult = auctionRepository.findAll(spec, pageable); List<AuctionsDTO> dtoList = (new AuctionsDTOAssembler()).toDTOList(pageresult.getContent()); return new ListWithTotalCount<AuctionsDTO>(dtoList, (int) pageresult.getTotalElements()); }
  • 相关阅读:
    C++编写ATM(2)
    【Python排序搜索基本算法】之Dijkstra算法
    Java中List转换为数组,数组转List
    [置顶] 亚信联创实习笔记
    PL/SQL 异常处理程序
    CSS position财产
    malloc()与calloc差异
    Qt5官方demo分析集10——Qt Quick Particles Examples
    栈和堆之间的差
    深入浅出JMS(一)——JMS简要
  • 原文地址:https://www.cnblogs.com/mr-wuxiansheng/p/6308829.html
Copyright © 2020-2023  润新知