0

私の要件は単純です。過去 3 四半期のニュースレターを画面に表示する必要があります。
このためには、ニュースレターの PDF リンクをセッションに設定する必要があります。
したがって、ユーザーが 2013 年 2 月にログインすると、次の 3 つのリンクが表示されます。

'Newsletter Q1 2013'
'Newsletter Q4 2012'
'Newsletter Q3 2012'

これまでのコードは次のとおりです。

        String newsLetter1 = null;
        String newsLetter2 = null;
        String newsLetter3 = null;
           Date date  = new Date();
           Calendar cal = Calendar.getInstance(Locale.US);
           cal.setTime(date);
           int month = cal.get(Calendar.MONTH);
           int quarter = (month / 3) + 1;
    //Do something here to populate newsLetter1, newsLetter2 , newsLetter3 
      variables based on current date 
           session.setAttribute("newsLetter1", "Newsletter  "+newsLetter1 );
           session.setAttribute("newsLetter2", "Newsletter  "+newsLetter2);
           session.setAttribute("newsLetter3", "Newsletter  "+newsLetter3);

よく考えてみましたが、考えられる解決策が思い浮かびませんでした。助けてください。

4

3 に答える 3

1

次のように四半期を見つけることができます

 Calendar cal=Calendar.getInstance();
    int month = cal.get(Calendar.MONTH);
    int quarter=0;
    if(month<5){
        quarter=1;
        // news letter belongs to quarter 1
    }else if(month<9){
       quarter=2;
       // news letter belongs to quarter 2
    }else {
        quarter=3;
       // news letter belongs to quarter 3
    }

次の四半期使用で年にしたい場合

 Calendar cal=Calendar.getInstance();
    int month = cal.get(Calendar.MONTH);
    int year =cal.get(Calendar.YEAR);
    if(month<5){
        System.out.println(year+" "+"quarter "+1);
    }else if(month<9){
        System.out.println(year+" "+"quarter "+2);
    }else {
        System.out.println(year+" "+"quarter "+3);
    }
于 2013-08-06T12:05:51.237 に答える