Как связать дату с полосами, используя определенный формат? ММ / дд / гггг ЧЧ: мм: сс - PullRequest
1 голос
/ 20 сентября 2010

Как привязать дату к полосам , используя определенный формат?"ММ / дд / гггг ЧЧ: мм: сс"

<s:text name="myDateTime" formatPattern="MM/dd/yyyy HH:mm:ss" />

Ответы [ 3 ]

2 голосов
/ 22 сентября 2010

Stripes использует преобразователи типов для преобразования параметров запроса (строк) в определенные типы. Javadoc для конвертера типов дат по умолчанию можно найти здесь:

net.sourceforge.stripes.validation.DateTypeConverter

Чтобы изменить форматы по умолчанию, говорится:

Этот набор форматов по умолчанию можно изменить, предоставив другой набор строк форматирования в пакете ресурсов Stripes или путем подклассификации и переопределения getFormatStrings (). Во всех случаях шаблоны должны указываться с использованием одинарных пробелов в качестве разделителей вместо косых черт, тире или других символов.

И

Ключи, используемые в комплекте ресурсов для указания строк формата и шаблона предварительной обработки: stripes.dateTypeConverter.formatStrings и stripes.dateTypeConverter.preProcessPattern

Если это не поможет вам, вы всегда можете бросить свой собственный TypeConverter . Этот пользовательский преобразователь типов может быть затем привязан к установщику в ActionBean с помощью:

@Validate(converter=YourCustomTypeConverter.class)
public void setDate(Date date) {
  this.date = date;
}

Если вы хотите, чтобы сопоставление выполнялось автоматически, вам необходимо либо переопределить сопоставитель по умолчанию, либо создать другой (под) тип. Например, вы создаете свой собственный конвертер типов не для java.util.Date, а для своего собственного пользовательского типа, который наследуется от java.util.Date. Поскольку это просто подтип без какого-либо дополнительного поведения, остальная часть приложения может использовать его как java.util.Date.

Date date;

// No @validate needed, maps to MyCustomDate
public void setDate(MyCustomDate date) {
  this.date = date;
}     
0 голосов
/ 03 января 2014
<fmt:formatDate timeZone="${timeZone}" value="${date}" pattern="MM/dd/yyyy hh:mm a"/>
0 голосов
/ 20 сентября 2010

SimpleDateFormat сможет вам помочь.

...