2015-10-13 40 views
0

根据数据库,我有一个实体类,其中包括一个名为start_date的日期类型字段。在jsp页面中有一个搜索栏,用户可以使用该名称或日期搜索数据。但是,我们传入的搜索值应该是一个字符串值。如何将日期类型实体字段转换为Java中的字符串?

但作为start_date是一种日期,我无法使用它来搜索数据,因为搜索参数是一个字符串。我能做些什么来将日期类型转换为字符串?这些是我得到的示例实体字段。

P.S:这是与MySQL

@Basic 
@Column(name = "name") 
public String getName() { 
    return name; 
} 

public void setName(String name) { 
    this.name = name; 
} 

@Basic 
@Column(name = "start_date") 
public Date getStartDate() { 
    return startDate; 
} 

public void setStartDate(Date startDate) { 
    this.startDate = startDate; 
} 

一个Maven的Hibernate Spring MVC的项目任何帮助,将不胜感激。

+1

这与你的UI组件有关 - 如果你使用Spring _MVC_,你应该在你的问题中说清楚。通常,UI框架负责将HTML输入转换为Java对象。 –

+0

感谢遗漏了MVC,所以我应该找到一种通过UI组件的方式? – Kulasangar

+1

是的,这是我评论的重点。我添加了标签'spring-mvc',因为有些专家可能会帮助你。 –

回答

0

添加一个<input type="date"/>并使用控制器方法将其绑定到@RequestParam Date searchDate。行格式为yyyy-mm-dd,所以请确保您的活页夹支持,因为我不确定它是否是开箱即用。

0
pubilc Static getFromattedDate(date,dateFormatter){ 
    SimpleDateFormat formatter = new SimpleDateFormat(dateFormat); 
    return formatter.format(date); 
} 

创建你CalendarUtil.java这种方法,你可以从你的controller.then叫你可以格式化你的输入,只要你想回来作为字符串。

+1

这既不考虑当前用户的语言也不考虑时区 - 并且该评论与格式化程序字符串不一致 - 它也包含时间信息以及...日期格式化程序中的 –

+0

也可以使用这种“yyyy-MM- DD”。然后可以删除时间信息。 – VirangaMahesh

+1

您应该编辑您的答案以整合该答复。 –

相关问题