Мне интересно, как конвертировать String
в Date
в Struts2. У меня есть простая форма, в которой пользователь предоставляет дату в этом формате "yyyy-MM-dd"
. После представления карт Sturts2 это будет бина. Я получил ошибку в преобразовании даты. Я Google это много и каждый, где говорится, что для этого мы должны использовать специальный конвертер типов. Я не хочу писать конвертер пользовательского типа для преобразования даты. Я думаю, что в Struts2 должен быть простой механизм преобразования данных, поскольку преобразование данных является очень распространенной функциональностью.Преобразование даты в Struts2
JSP
<s:form action="AddDomain">
<s:push value="idp">
<s:textfield name="domainName" label="Domain Name" />
<s:textfield name="url" label="Domain URL" />
<s:textfield name="noOfLicense" label="License Purchased" />
<s:textfield name="licenseExpireDate" label="License Expire Date"
title="YYYY-MM-DD like 2013-01-21" />
<s:textfield name="userActiveDuration" label="Active User Duration"
title="please mention in days" />
<s:textarea name="notes" label="Note" cols="30" rows="5" ></s:textarea>
<s:submit value="Add" />
</s:push>
</s:form>
Это JSP где пользователь вводит входные данные.
Модель Класс
@Entity
@Table(name = "Domain")
public class IdentityProvider implements Serializable {
@Id
@Basic(optional = false)
private String url;
private String domainName;
private int noOfLicense;
private int userActiveDuration;
private int activeUsers;
private Date licenseExpireDate;
private String notes;
@GeneratedValue(strategy = GenerationType.IDENTITY)
private String domainIdCode;
public IdentityProvider(String name, String url, int nol, int time,Date d,String notes) {
this.setDomainName(name);
this.setUrl(url);
this.setNoOfLicense(nol);
this.setUserActiveDuration(time);
this.setLicenseExpireDate(d);
this.setNotes(notes);
}
public IdentityProvider() {
}
// Getter Setter
}
Действие Класс
public class DomainManagementAction extends ActionSupport
implements ModelDriven<IdentityProvider> {
private IdentityProvider idp = new IdentityProvider();
public IdentityProvider getIdp() {
return idp;
}
public void setIdp(IdentityProvider idp) {
this.idp = idp;
}
public String saveDomain() {
IDPBroker broker = new IDPBroker();
broker.saveDomain(idp);
return ActionSupport.SUCCESS;
}
@Override
public IdentityProvider getModel() {
// TODO Auto-generated method stub
return idp;
}
}
Могут ли стойки конвертировать одновременно дату и время? Например: '30/06/09 07:03 ' –
Вы должны задать вопрос, так как ответ сформулирован. TL; DR да –