[Java] SoapUI使用Java获取各时间日期方法

import java.util.*;
import java.text.SimpleDateFormat;

// current date
String dateNew = today()

// tomorrow
String tomorrow = tomorrow()

//  yesterday
String yesterday = yesterday()

// the day before yesterday
String theDayBeforeYesterday = theDayBeforeYesterday()

// Last Market Close
String lastMarketClose = lastMarketClose()
log.info "------> lastMarketClose : "+lastMarketClose

// Last Market Close -2 days
String lastMarketCloseMinus2Days = lastMarketCloseMinus2Days()

// Two years ago of Last Market Close -2 days
String twoYearsAgoOfLastMarketCloseMinus2Days = twoYearsAgoOfLastMarketCloseMinus2Days(lastMarketCloseMinus2Days)

// yesterday of Last Market Close
String yesterdayOfLastMarketClose = yesterdayOfLastMarketClose(lastMarketClose)

// a month ago of Last Market Close
String aMonthAgoOfLastMarketClose = aMonthAgoOfLastMarketClose(lastMarketClose)

// three months ago of Last Market Close
String threeMonthsAgoOfLastMarketClose = threeMonthsAgoOfLastMarketClose(lastMarketClose)

// three years ago of Last Market Close
String threeYearsAgoOfLastMarketClose = threeYearsAgoOfLastMarketClose(lastMarketClose)
log.info "------> threeYearsAgoOfLastMarketClose : "+threeYearsAgoOfLastMarketClose

// the last day of last week
String theLastDayOfLastWeek = theLastDayOfLastWeek()

// the last day of  last month
String theLastDayOfLastMonth = theLastDayOfLastMonth()

// Get the same day of last month
String theSameDayOfLastMonth = theSameDayOfLastMonth()

// The first day of the quarter
String theFirstDayOfTheQuarter = theFirstDayOfTheQuarter()

// The last day of last quarter
String theLastDayOfLastQuarter = theLastDayOfLastQuarter(theFirstDayOfTheQuarter)

//  a year ago after The last day of last quarter
String aYearAgoAfterTheLastDayOfLastQuarter = aYearAgoAfterTheLastDayOfLastQuarter(theFirstDayOfTheQuarter)

// The first day of last quarter
String theFirstDayOfLastQuarter = theFirstDayOfLastQuarter(theFirstDayOfTheQuarter)

// The last day of two quarters ago
String theLastDayOfTwoQuartersAgo = theLastDayOfTwoQuartersAgo(theLastDayOfLastQuarter)

// The first day of six months ago after two quarters 
String theFirstDayOfSixMonthsAgoAfterTwoQuarters = theFirstDayOfSixMonthsAgoAfterTwoQuarters(theLastDayOfTwoQuartersAgo)

// yesterday of  three months ago
String yesterdayOfThreeMonthsAgo = yesterdayOfThreeMonthsAgo()

// The first day of  two months ago
String theFirstDayOfTwoMonthsAgo = theFirstDayOfTwoMonthsAgo()

// The last day of  two months ago
String theLastDayOfTwoMonthsAgo = theLastDayOfTwoMonthsAgo()

// The first day of  three months ago
String theFirstDayOfThreeMonthsAgo = theFirstDayOfThreeMonthsAgo()

// The first day of  six months ago
String theFirstDayOfSixMonthsAgo = theFirstDayOfSixMonthsAgo()

// The first day of this year
String theFirstDayOfThisYear = theFirstDayOfThisYear()

// The last day of last year
String theLastDayOfLastYear = theLastDayOfLastYear()

// tomorrow of  last year
String tomorrowOfLastYear = tomorrowOfLastYear()

// the first day of this month last year
String theFirstDayOfThisMonthLastYear = theFirstDayOfThisMonthLastYear()

// the first day of last year
String theFirstDayOfLastYear = theFirstDayOfLastYear()

// the same day of this month three years ago
String theSameDayOfThisMonthThreeYearsAgo = theSameDayOfThisMonthThreeYearsAgo()

// the first day of this month three years ago
String theFirstDayOfThisMonthThreeYearsAgo = theFirstDayOfThisMonthThreeYearsAgo()

// the first day of three years ago
String theFirstDayOfThreeYearsAgo = theFirstDayOfThreeYearsAgo()

// Set the project level property : currentDate,yesterDay,lastMonth , its value will updated with dateNew
testRunner.testCase.testSuite.project.setPropertyValue( "currentDate", dateNew )
testRunner.testCase.testSuite.project.setPropertyValue( "tomorrow", tomorrow )
testRunner.testCase.testSuite.project.setPropertyValue( "yesterday", yesterday )
testRunner.testCase.testSuite.project.setPropertyValue( "theDayBeforeYesterday", theDayBeforeYesterday )
testRunner.testCase.testSuite.project.setPropertyValue( "lastMarketClose", lastMarketClose )
testRunner.testCase.testSuite.project.setPropertyValue( "lastMarketCloseMinus2Days", lastMarketCloseMinus2Days )
testRunner.testCase.testSuite.project.setPropertyValue( "twoYearsAgoOfLastMarketCloseMinus2Days", twoYearsAgoOfLastMarketCloseMinus2Days )
testRunner.testCase.testSuite.project.setPropertyValue( "threeYearsAgoOfLastMarketClose", threeYearsAgoOfLastMarketClose )
testRunner.testCase.testSuite.project.setPropertyValue( "theDayBeforeYesterday", theDayBeforeYesterday )
testRunner.testCase.testSuite.project.setPropertyValue( "theLastDayOfLastWeek", theLastDayOfLastWeek )
testRunner.testCase.testSuite.project.setPropertyValue( "yesterdayOfLastMarketClose", yesterdayOfLastMarketClose )
testRunner.testCase.testSuite.project.setPropertyValue( "aMonthAgoOfLastMarketClose", aMonthAgoOfLastMarketClose )
testRunner.testCase.testSuite.project.setPropertyValue( "threeMonthsAgoOfLastMarketClose", threeMonthsAgoOfLastMarketClose )
testRunner.testCase.testSuite.project.setPropertyValue( "theFirstDayOfTheQuarter", theFirstDayOfTheQuarter )
testRunner.testCase.testSuite.project.setPropertyValue( "theLastDayOfLastQuarter", theLastDayOfLastQuarter )
testRunner.testCase.testSuite.project.setPropertyValue( "aYearAgoAfterTheLastDayOfLastQuarter", aYearAgoAfterTheLastDayOfLastQuarter )
testRunner.testCase.testSuite.project.setPropertyValue( "theFirstDayOfLastQuarter", theFirstDayOfLastQuarter )
testRunner.testCase.testSuite.project.setPropertyValue( "theLastDayOfTwoQuartersAgo", theLastDayOfTwoQuartersAgo )
testRunner.testCase.testSuite.project.setPropertyValue( "theFirstDayOfSixMonthsAgoAfterTwoQuarters", theFirstDayOfSixMonthsAgoAfterTwoQuarters )
testRunner.testCase.testSuite.project.setPropertyValue( "theSameDayOfLastMonth", theSameDayOfLastMonth )
testRunner.testCase.testSuite.project.setPropertyValue( "theLastDayOfLastMonth", theLastDayOfLastMonth )
testRunner.testCase.testSuite.project.setPropertyValue( "yesterdayOfThreeMonthsAgo", yesterdayOfThreeMonthsAgo )
testRunner.testCase.testSuite.project.setPropertyValue( "theFirstDayOfTwoMonthsAgo", theFirstDayOfTwoMonthsAgo )
testRunner.testCase.testSuite.project.setPropertyValue( "theLastDayOfTwoMonthsAgo", theLastDayOfTwoMonthsAgo )
testRunner.testCase.testSuite.project.setPropertyValue( "theFirstDayOfThreeMonthsAgo", theFirstDayOfThreeMonthsAgo )
testRunner.testCase.testSuite.project.setPropertyValue( "theFirstDayOfSixMonthsAgo", theFirstDayOfSixMonthsAgo )
testRunner.testCase.testSuite.project.setPropertyValue( "theFirstDayOfThisYear", theFirstDayOfThisYear )
testRunner.testCase.testSuite.project.setPropertyValue( "theLastDayOfLastYear", theLastDayOfLastYear )
testRunner.testCase.testSuite.project.setPropertyValue( "tomorrowOfLastYear", tomorrowOfLastYear )
testRunner.testCase.testSuite.project.setPropertyValue( "theFirstDayOfThisMonthLastYear", theFirstDayOfThisMonthLastYear )
testRunner.testCase.testSuite.project.setPropertyValue( "theFirstDayOfLastYear", theFirstDayOfLastYear )
testRunner.testCase.testSuite.project.setPropertyValue( "theSameDayOfThisMonthThreeYearsAgo", theSameDayOfThisMonthThreeYearsAgo )
testRunner.testCase.testSuite.project.setPropertyValue( "theFirstDayOfThisMonthThreeYearsAgo", theFirstDayOfThisMonthThreeYearsAgo )
testRunner.testCase.testSuite.project.setPropertyValue( "theFirstDayOfThreeYearsAgo", theFirstDayOfThreeYearsAgo )

//**********************************************************************Methods**************************************************************************

def today(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    str = sdf.format(lastDate.getTime());
    return str;
}

def yesterday(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.DATE, -1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theDayBeforeYesterday(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.DATE, -2);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theLastDayOfLastMonth(){
    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;
}

def theSameDayOfLastMonth(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.roll(Calendar.MONTH, -1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def tomorrow(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def yesterdayOfThreeMonthsAgo(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.MONTH, -3);
    lastDate.add(Calendar.DATE, -1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theFirstDayOfTwoMonthsAgo(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.MONTH, -2);
    lastDate.set(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theLastDayOfTwoMonthsAgo(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.MONTH, -2);
    lastDate.set(Calendar.DATE, 1);
    lastDate.roll(Calendar.DATE, -1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theFirstDayOfThreeMonthsAgo(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.MONTH, -3);
    lastDate.set(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theFirstDayOfSixMonthsAgo(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.MONTH, -6);
    lastDate.set(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def tomorrowOfLastYear(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.YEAR, -1);
    lastDate.add(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theSameDayOfThisMonthThreeYearsAgo(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.YEAR, -3);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theFirstDayOfThisMonthThreeYearsAgo(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.YEAR, -3);
    lastDate.set(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theFirstDayOfThreeYearsAgo(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.YEAR, -3);
    lastDate.set(Calendar.MONTH, 0);
    lastDate.set(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theFirstDayOfThisYear(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.set(Calendar.MONTH, 0);
    lastDate.set(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theLastDayOfLastYear(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.YEAR, -1);
    lastDate.set(Calendar.MONTH, 11);
    lastDate.set(Calendar.DATE, 31);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theFirstDayOfTheQuarter(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    int i = 0
    int j = 0
    int month = lastDate.get(Calendar.MONTH)
    if (month >= 1 && month <= 3) {
        j = 0;
    }
    if (month >= 4 && month <= 6) {
        j = 3;
    }
    if (month >= 7 && month <= 9) {
        j = 6;
    }
    if (month >= 10 && month <= 12) {
        j = 9;
    }
    lastDate.set(Calendar.MONTH, j);
    lastDate.set(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theLastDayOfLastQuarter(String theFirstDayOfTheQuarter){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = sdf.parse(theFirstDayOfTheQuarter)
    Calendar lastDate = Calendar.getInstance();
    lastDate.setTime(date);
    lastDate.add(Calendar.MONTH, -1);
    lastDate.roll(Calendar.DATE, -1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def aYearAgoAfterTheLastDayOfLastQuarter(String theFirstDayOfTheQuarter){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = sdf.parse(theFirstDayOfTheQuarter)
    Calendar lastDate = Calendar.getInstance();
    lastDate.setTime(date);
    lastDate.add(Calendar.YEAR, -1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theFirstDayOfLastQuarter(String theFirstDayOfTheQuarter){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = sdf.parse(theFirstDayOfTheQuarter)
    Calendar lastDate = Calendar.getInstance();
    lastDate.setTime(date);
    lastDate.add(Calendar.MONTH, -3);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theLastDayOfTwoQuartersAgo(String theLastDayOfLastQuarter){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = sdf.parse(theLastDayOfLastQuarter)
    Calendar lastDate = Calendar.getInstance();
    lastDate.setTime(date);
    lastDate.add(Calendar.MONTH, -3);
    lastDate.set(Calendar.DATE, 1);
    lastDate.roll(Calendar.DATE, -1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theFirstDayOfSixMonthsAgoAfterTwoQuarters(String theLastDayOfTwoQuartersAgo){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = sdf.parse(theLastDayOfTwoQuartersAgo)
    Calendar lastDate = Calendar.getInstance();
    lastDate.setTime(date);
    lastDate.add(Calendar.MONTH, -8);
    lastDate.set(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theFirstDayOfThisMonthLastYear(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.YEAR, -1);
    lastDate.set(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theFirstDayOfLastYear(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.YEAR, -1);
    lastDate.set(Calendar.MONTH,0)
    lastDate.set(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def theLastDayOfLastWeek(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.WEEK_OF_MONTH,-1);
    lastDate.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY);
    str = sdf.format(lastDate.getTime());
    return str;
}

def lastMarketClose(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    String ss = lastDate.get(Calendar.DAY_OF_WEEK)
    if ("1".equals(ss)){
        lastDate.add(Calendar.WEEK_OF_MONTH,-1);
        lastDate.set(Calendar.DAY_OF_WEEK, Calendar.FRIDAY)
    }
    if ("7".equals(ss)){
        lastDate.set(Calendar.DAY_OF_WEEK, Calendar.FRIDAY)
    }
    str = sdf.format(lastDate.getTime());
    return str;
}

def lastMarketCloseMinus2Days(){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar lastDate = Calendar.getInstance();
    lastDate.add(Calendar.DATE, -2);
    String ss = lastDate.get(Calendar.DAY_OF_WEEK)
    if ("1".equals(ss) ){
        lastDate.add(Calendar.WEEK_OF_MONTH,-1);
        lastDate.set(Calendar.DAY_OF_WEEK, Calendar.FRIDAY)
    }
    if ("7".equals(ss)){
        lastDate.set(Calendar.DAY_OF_WEEK, Calendar.FRIDAY)
    }
    str = sdf.format(lastDate.getTime());
    return str;
}

def twoYearsAgoOfLastMarketCloseMinus2Days(String lastMarketCloseMinus2Days){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = sdf.parse(lastMarketCloseMinus2Days)
    Calendar lastDate = Calendar.getInstance();
    lastDate.setTime(date);
    lastDate.add(Calendar.YEAR, -2)
    lastDate.add(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def yesterdayOfLastMarketClose(String lastMarketClose){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = sdf.parse(lastMarketClose)
    Calendar lastDate = Calendar.getInstance();
    lastDate.setTime(date);
    lastDate.add(Calendar.DATE, -1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def aMonthAgoOfLastMarketClose(String lastMarketClose){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = sdf.parse(lastMarketClose)
    Calendar lastDate = Calendar.getInstance();
    lastDate.setTime(date);
    lastDate.add(Calendar.MONTH, -1)
    lastDate.add(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def threeMonthsAgoOfLastMarketClose(String lastMarketClose){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = sdf.parse(lastMarketClose)
    Calendar lastDate = Calendar.getInstance();
    lastDate.setTime(date);
    lastDate.add(Calendar.MONTH, -3)
    lastDate.add(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}

def threeYearsAgoOfLastMarketClose(String lastMarketClose){
    String str = "";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = sdf.parse(lastMarketClose)
    Calendar lastDate = Calendar.getInstance();
    lastDate.setTime(date);
    lastDate.add(Calendar.YEAR, -3)
    lastDate.add(Calendar.DATE, 1);
    str = sdf.format(lastDate.getTime());
    return str;
}
原文地址:https://www.cnblogs.com/wynlfd/p/5764991.html