Struts 2 "если" тег - PullRequest
       2

Struts 2 "если" тег

0 голосов
/ 31 декабря 2011

В своем приложении я использую Struts 2.

На одной странице я хочу использовать тег Struts 2 <s:if>, но не могу заставить его работать.

В действии я представляю сущность "персона" для представления.

Затем на странице я хочу сравнить текущую дату с днем ​​рождения человека.

Я пробовал это:

<s:if test="person.birthday > new java.util.Date()">xxxx</s:if>

Но это не работает.

Как это исправить?

1 Ответ

3 голосов
/ 31 декабря 2011

Я считаю, что вы используете Date в качестве типа данных для person.brithday. Вы можете сделать это следующим образом:

Если вы можете изменить / изменить свое действие, добавьте новый java.util.Date () для действия в качестве нового поля.

Кроме того, использование java.util.Date() вообще не является хорошей практикой, так как большая часть его метода устарела, поэтому я предлагаю вам использовать java.util.Calendar, что болеегибкий.

Вы можете использовать Date.equals(), Date.before() and Date.after() для сравнения 2 дат. Все, что вам нужно сделать, это сделать следующим образом

<s:if test="%{person.brithday.before(currentdate)}">
    inside If block
 </s:if>
 <s:else>
    else block
</s:else>

Где я предполагаю, что currentDate устанавливается в вашем действиикласс, но если вы хотите изменить его, чтобы использовать его только на странице JSP, можете изменить его.

...