`
shift8
  • 浏览: 150061 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Java 时间函数

阅读更多

前六个月

import org.apache.commons.lang.time.DateUtils;
DateFormat format = new SimpleDateFormat("yyyy-MM");
  
String from=null;;
String end=null;;
  try {
   from = format.format(DateUtils.addMonths(checkTime, -6));
   end = format.format(DateUtils.addMonths(checkTime, -1));
  } catch (Exception e) {
   // TODO: handle exception
  }
  
String hql="select sum(br.redeemFee) from BlackRedeem br where    br.dcBh='"+msId+"' and br.redeemTime between '"+
   from+"' and '"+end+"'";

 

上一个月
Datebox checkTime = (Datebox) this.getFellow("checkTime");
Date date = new Date();
Calendar cal = Calendar.getInstance();
cal.clear();
cal.setTime(date);
cal.add(Calendar.MONTH, -1);
checkTime.setValue(cal.getTime());

 

 // 获得下周星期日的日期   
    public String getNextSunday() {   
           
        int mondayPlus = this.getMondayPlus();   
        GregorianCalendar currentDate = new GregorianCalendar();   
        currentDate.add(GregorianCalendar.DATE, mondayPlus + 7+6);   
        Date monday = currentDate.getTime();   
        DateFormat df = DateFormat.getDateInstance();   
        String preMonday = df.format(monday);   
        return preMonday;   
    }   
       
       
       
    private int getMonthPlus(){   
        Calendar cd = Calendar.getInstance();   
        int monthOfNumber = cd.get(Calendar.DAY_OF_MONTH);   
        cd.set(Calendar.DATE, 1);//把日期设置为当月第一天    
        cd.roll(Calendar.DATE, -1);//日期回滚一天,也就是最后一天    
        MaxDate=cd.get(Calendar.DATE);    
        if(monthOfNumber == 1){   
            return -MaxDate;   
        }else{   
            return 1-monthOfNumber;   
        }   
    }   
       
  //获得上月最后一天的日期   
    public String getPreviousMonthEnd(){   
        String str = "";   
       SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");       
  
       Calendar lastDate = Calendar.getInstance();   
      lastDate.add(Calendar.MONTH,-1);//减一个月   
      lastDate.set(Calendar.DATE, 1);//把日期设置为当月第一天    
      lastDate.roll(Calendar.DATE, -1);//日期回滚一天,也就是本月最后一天    
       str=sdf.format(lastDate.getTime());   
       return str;     
    }   
       
  //获得下个月第一天的日期   
    public String getNextMonthFirst(){   
        String str = "";   
       SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");       
  
       Calendar lastDate = Calendar.getInstance();   
      lastDate.add(Calendar.MONTH,1);//减一个月   
      lastDate.set(Calendar.DATE, 1);//把日期设置为当月第一天    
       str=sdf.format(lastDate.getTime());   
       return str;     
    }   
       
  //获得下个月最后一天的日期   
    public String getNextMonthEnd(){   
        String str = "";   
       SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");       
  
       Calendar lastDate = Calendar.getInstance();   
      lastDate.add(Calendar.MONTH,1);//加一个月   
      lastDate.set(Calendar.DATE, 1);//把日期设置为当月第一天    
      lastDate.roll(Calendar.DATE, -1);//日期回滚一天,也就是本月最后一天    
       str=sdf.format(lastDate.getTime());   
       return str;     
    }   
       
    //获得明年最后一天的日期   
    public String getNextYearEnd(){   
        String str = "";   
       SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");       
  
      Calendar lastDate = Calendar.getInstance();   
      lastDate.add(Calendar.YEAR,1);//加一个年   
      lastDate.set(Calendar.DAY_OF_YEAR, 1);   
     lastDate.roll(Calendar.DAY_OF_YEAR, -1);   
       str=sdf.format(lastDate.getTime());   
       return str;     
    }   
       
  //获得明年第一天的日期   
    public String getNextYearFirst(){   
        String str = "";   
       SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");       
  
      Calendar lastDate = Calendar.getInstance();   
      lastDate.add(Calendar.YEAR,1);//加一个年   
      lastDate.set(Calendar.DAY_OF_YEAR, 1);   
           str=sdf.format(lastDate.getTime());   
      return str;     
           
    }   
       
  //获得本年有多少天   
    private int getMaxYear(){   
        Calendar cd = Calendar.getInstance();   
        cd.set(Calendar.DAY_OF_YEAR,1);//把日期设为当年第一天   
        cd.roll(Calendar.DAY_OF_YEAR,-1);//把日期回滚一天。   
        int MaxYear = cd.get(Calendar.DAY_OF_YEAR);    
        return MaxYear;   
    }   
       
    private int getYearPlus(){   
        Calendar cd = Calendar.getInstance();   
        int yearOfNumber = cd.get(Calendar.DAY_OF_YEAR);//获得当天是一年中的第几天   
        cd.set(Calendar.DAY_OF_YEAR,1);//把日期设为当年第一天   
        cd.roll(Calendar.DAY_OF_YEAR,-1);//把日期回滚一天。   
        int MaxYear = cd.get(Calendar.DAY_OF_YEAR);   
        if(yearOfNumber == 1){   
            return -MaxYear;   
        }else{   
            return 1-yearOfNumber;   
        }   
    }   
  //获得本年第一天的日期   
    public String getCurrentYearFirst(){   
        int yearPlus = this.getYearPlus();   
        GregorianCalendar currentDate = new GregorianCalendar();   
        currentDate.add(GregorianCalendar.DATE,yearPlus);   
        Date yearDay = currentDate.getTime();   
        DateFormat df = DateFormat.getDateInstance();   
        String preYearDay = df.format(yearDay);   
        return preYearDay;   
    }   
       
       
  //获得本年最后一天的日期 *   
    public String getCurrentYearEnd(){   
        Date date = new Date();   
        SimpleDateFormat   dateFormat   =   new   SimpleDateFormat("yyyy");//可以方便地修改日期格式      
        String  years  = dateFormat.format(date);      
        return years+"-12-31";   
    }   
       
       
  //获得上年第一天的日期 *   
    public String getPreviousYearFirst(){   
        Date date = new Date();   
        SimpleDateFormat   dateFormat   =   new   SimpleDateFormat("yyyy");//可以方便地修改日期格式      
        String  years  = dateFormat.format(date); int years_value = Integer.parseInt(years);     
        years_value--;   
        return years_value+"-1-1";   
    }   
       
  //获得上年最后一天的日期   
    public String getPreviousYearEnd(){   
        weeks--;   
        int yearPlus = this.getYearPlus();   
        GregorianCalendar currentDate = new GregorianCalendar();   
        currentDate.add(GregorianCalendar.DATE,yearPlus+MaxYear*weeks+(MaxYear-1));   
        Date yearDay = currentDate.getTime();   
        DateFormat df = DateFormat.getDateInstance();   
        String preYearDay = df.format(yearDay);   
        getThisSeasonTime(11);   
        return preYearDay;   
    }   

 

 

 

/**
* 日期转换成字符串
* @param date
* @return str
*/

public static String DateToStr(Date date) {
  
   SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
   String str = format.format(date);
   return str;
}

/**
* 字符串转换成日期
* @param str
* @return date
*/
public static Date StrToDate(String str) {
  
   SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
   Date date = null;
   try {
    date = format.parse(str);
   } catch (ParseException e) {
    e.printStackTrace();
   }
   return date;
}

public static void main(String[] args) {
  
   Date date = new Date();
   System.out.println("日期转字符串:" + ConvertDemo.DateToStr(date));
   System.out.println("字符串转日期:" + ConvertDemo.StrToDate(ConvertDemo.DateToStr(date)));
  
}

 

//1.判断是所给月最后一天

  String time_str="2009-09-20";
  SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
  Date date = null;

  try {
   date = format.parse(time_str);
  } catch (ParseException e) {
   e.printStackTrace();
  }

  Calendar cal = Calendar.getInstance();
  cal.setTime(date);

  int maxDate = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
  cal.set(Calendar.DATE, maxDate);

  Date lastDayOfMonth = cal.getTime();
  
  if(!date.toString().equals(lastDayOfMonth.toString())){
   return null;
  }

 

//取得考核月份的天数,乘以24就是当月的总小时数************************
  Date da=checkTime.getValue();
  Calendar  calendar  =  Calendar.getInstance(); 
  calendar.set(da.getYear(),da.getMonth(),1);
  int hours =calendar.getActualMaximum(calendar.DAY_OF_MONTH)*24;
  
  List fmInfoList=fmCheckServices.findByHql("from FmInfo f where f.jzBh='"+jzId+
    "' and to_char(to_date(f.startTime,'YYYY-MM-DD HH24'),'yyyy-mm')='"+
    checkDate+"'");

分享到:
评论

相关推荐

    Java时间函数大全.pdf

    Java 时间函数大全 Java 时间函数大全是一份涵盖了 Java 中时间函数的详细列表,提供了多种时间处理函数,包括获取一个月的最后一天、判断两个时间是否在同一个周、产生周序列等。 获取一个月的最后一天 在 Java ...

    Java时间函数大全

    ### Java时间函数详解 在Java编程中,处理时间与日期是一项常见且重要的任务。本文将深入探讨《Java时间函数大全》中的几个关键方法,这些方法覆盖了从获取一个月的最后一天到判断两个日期是否处于同一周,再到获取...

    java时间函数大全.doc

    Java 时间函数大全 Java 语言中提供了多种处理日期和时间的方法,本文将对 Java 中常用的日期和时间处理函数进行总结和分类。 1. 获取当前时间 在 Java 中,可以使用 `java.util.Date` 类来获取当前时间。`Date`...

    Java时间函数大全[参考].pdf

    Java时间函数在软件开发中扮演着重要角色,用于处理日期和时间的各种操作。在这个文档中,我们可以看到几个关键的Java时间函数示例,这些函数帮助开发者处理日期计算、比较和格式化。 首先,`getEndDateOfMonth` ...

    Java时间函数大全[归类].pdf

    Java时间函数是编程中处理日期和时间的重要工具,主要用于创建、操作和格式化日期。Java提供了多种类和方法来处理时间,例如`java.util.Date`、`java.util.Calendar`、`java.time`包中的类(自Java 8起)以及`java....

    专题资料(2021-2022年)java时间函数大全.doc

    Java时间函数是编程中非常重要的一个部分,尤其是在处理与日期和时间相关的业务逻辑时。Java标准库提供了多种类和方法来处理日期和时间,其中包括`java.util.Date`、`java.util.Calendar`以及`java.text....

    Java常用函数大全

    5. **BSTime.java**: 可能包含了时间处理的函数,如计算时间差、时间格式化等。除了`Date`类,Java 8引入了`java.time`包,提供了更强大和易用的时间日期API,如`LocalTime`、`Duration`等。 6. **BSFile.java**: ...

    Java常用函数速查表

    9. **日期和时间API**:Java 8引入了新的日期和时间API(java.time包),如`LocalDate`、`LocalTime`和`LocalDateTime`,提供了更加友好的日期和时间操作,如`plusDays()`增加天数,`parse()`解析日期字符串,以及`...

    java日期时间操作函数代码

    在Java编程语言中,日期和时间的处理是常见的任务,涉及到很多实用的函数。本篇文章将深入探讨如何在Java中进行日期时间的操作,主要基于标题和描述中提及的知识点。 首先,Java提供了一个内置的`java.util.Date`类...

    java函数速查中文版

    9. **日期时间处理**:java.time包提供了新的日期和时间API,如LocalDate、LocalTime、Duration等类,包含丰富的日期时间处理函数。 10. **泛型**:泛型增强了代码的类型安全,如List、Map, V>等,速查会解释如何...

    Java API函数大全

    ### Java API函数大全 在Java开发中,熟练掌握并运用API是提高开发效率、编写高质量代码的关键之一。本文将从给定的文档片段出发,详细解读其中提及的一些关键API概念及函数,帮助开发者们深入了解这些功能的具体...

    Java 8函数式编程.rar

    6. **日期与时间API**:Java 8对日期和时间API进行了重构,提供了`java.time`包,包含`LocalDate`, `LocalTime`, `LocalDateTime`等类,比旧的`java.util.Date`和`Calendar`更易于使用。 7. **并行流**:Stream API...

    java常用函数.doc

    在Java编程中,掌握常用函数是提升开发效率的关键。本篇将深入讲解Java中涉及字符串、包装类、日期处理、基础数学操作以及其他实用工具类的相关函数,以及GUI组件如文本框、文本区、按钮和标签的使用。 首先,我们...

    java函数查询

    使用Java函数查询工具,开发者可以快速定位到需要的函数,避免了在大量源码或在线文档中寻找的时间,从而提高开发效率,特别是在处理复杂项目时。 7. **学习与进阶**: 对于初学者,这样的查询手册有助于理解和...

    java日期类函数方法整理

    根据给定的文件信息,以下是对Java日期类函数方法的详细整理与解释: ### Java日期类函数方法概览 在Java中,处理日期和时间主要依赖于`java.util.Date`、`java.text.SimpleDateFormat`、`java.sql.Date`、`java....

    java函数速查

    总之,Java函数速查资源是开发者不可或缺的工具,它能够节省查找和学习时间,提高编程效率。通过深入理解和熟练运用这些函数,可以编写出更加高效、简洁的Java代码。在日常工作中,持续学习和分享这些资料,不仅能...

    java 8 函数式编程 (源码)

    6. **日期和时间API**:Java 8对日期和时间处理进行了重大改进,引入了`java.time`包,包含了`LocalDate`, `LocalTime`, `LocalDateTime`等类,提供了更易用且功能强大的API。 7. **默认方法**:在接口中添加默认...

Global site tag (gtag.js) - Google Analytics