我目前有一个小问题,我正在努力解决,如果可能的话,不影响太多的代码库。我有一个使用jpql的过滤器,总结如下:
@Query("SELECT t FROM DoTable t " +
"WHERE ...
"AND (:datetimeParam is null OR (CAST(t.datetimeParam AS string)) LIKE ('%' + :datetimeParam + '%')) " +
)
Page<DoTable> filter(@Param("datetimeParam ") String datetimeParam...
所以从我展示的内容来看,目标是,如果你在2020-24-10输入,它会在这段时间内给你所有的值,不管时间是什么。或者,如果你决定输入24,它会给你所有提到24的值。
目前在我的数据库中,我有一个日期列,它与之链接,因此在应用程序中声明的变量是时间戳。但是,我知道时间戳的限制是它要求它是一种特定的格式。据我所知,我无法实现我的过滤愿景。我还知道,当从数据库中检索到信息时,它将通过检索值并在新列表中设置它们来显示它。总结如下:
public TableDTO convertDTO(DoTable doTable) {
TableDTO tableDTO = new TableDTO ();
...
tableDTO.setDatetimeParam(doTable.getDatetimeParam());
return tableDTO;
在本例中,get方法可以转换为字符串格式,但我不确定set方法是否可以。我之所以相信这会奏效,主要是因为,我认为,一个解决方案不会对一个案例造成太多问题。我想问的是,尽管set和get方法都声明了时间戳,但我是否可以对这一种情况进行转换?
暂无答案!
目前还没有任何答案,快来回答吧!