arraylist—如何在Java8中迭代时将实体列表的一些字符串字段转换为日期

c9x0cxw0  于 2021-06-26  发布在  Java
关注(0)|答案(0)|浏览(224)

我有一个实体列表,其中有各种值,包括一些字符串字段,我想转换为日期。

N_year_month=20010125, N_sequence_num=1, M_sequence_num=0, N_creation_date=20010109, N_check_date=20010211, _status=H, _frequency=A, _record=0

我的要求是在返回列表时,将n\u year\u month、n\u creation\u date、n\u check\u date转换为date。
我正在发布我写的代码

DateTimeFormatter formatter_1 = DateTimeFormatter.ofPattern("yyyy-MM-dd");

public List<NEntity> fetch(List<SearchCriteria> params){
    CriteriaQuery<NEntity> query = getNListDetailEntityCriteriaQuery(params);
    List<NEntity> nEntityDetailsList = entityManager.createQuery(query).getResultList();//in this line i am getting the data from the database 
    pmmEntityDetailsList.stream()
    .map(i->LocalDate.parse(i.N_year_month(),formatter_1))
    .collect(Collectors.toList());// Here i have tried to convert the String into date
     int count = entityManager.createQuery(query).getResultList().size();
     entityManager.close();
     return nEntityDetailsList;
}

我曾尝试使用Java8的流api将一个字段转换为日期,但我遇到了一个异常

{
"errorMessage": "Something went wrong!",
"errorDetails": "Text '20010125' could not be parsed at index 0",
"timestamp": "2021-01-06 10:29:48",
"status": 500
}

如何将这3个字段n\u year\u month、n\u creation\u date、n\u check\u date转换为date(yyyy-mm-dd格式),同时返回list-indentitydetailslist;

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题