我有一個 Model 類的陣列串列,它有多個 String 型別變數。此陣列串列值是從 JDBC 模板結果集填充的。
現在我想迭代這個陣列串列并根據某些條件更新其中一些模型元素。
我的模特班:
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class WADataModel {
public String STATUS;
public String AUTO_DATE;
public String RECORD_TYPE;
public String VENDOR_NAME;
public String CREATED_DATE;
public String ACTION_CODE;
public String CITY;
public String GROUP_NUMBER;
public String GROUP_POLICY_NUMBER;
public String SUBGROUP_NUMBER;
public String SUBGROUP_POLICY_NUMBER;
public String SYSTEM;
public String PLAN_NUMBER;
}
我的 DAO 課程:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.stereotype.Component;
@Component
public class PlanCrosswalks {
@Autowired
@Qualifier("nemisNamedJdbcTemplate")
private NamedParameterJdbcTemplate nemisJdbcTemplate;
@Autowired
private FetchDatafFromProp fetchDatafFromProp;
@Value("${query.state}")
private String queryState;
public List<WADataModel> doWACrosswalk(List<WADataModel> claimDataList) throws ApplicationExceptions{
RowMapper<WACrosswalkModel> rowMapper = new BeanPropertyRowMapper<>(WACrosswalkModel.class);
List<WACrosswalkModel> statusResult = new ArrayList<>();
Map<String,String> crosswalkQueryMap = new HashMap<>();
Map<String,String> paramMap = new HashMap<>();
crosswalkQueryMap = fetchDatafFromProp.getDataForGeneration();
statusResult = nemisJdbcTemplate.query(crosswalkQueryMap.get(queryState Constants.UNDERSCORE Constants.FETCH_SUB_GROUP_POLICY),paramMap,rowMapper);
for(WADataModel model : claimDataList)
//Here I want to update ClaimDataList elements like SUBGROUP_POLICY_NUMBER,GROUP_POLICY_NUMBER based upon some conditions by iterating whole List.
return claimDataList;
}
}
我想迭代“claimDataList”并檢查 plan_number 是否為空,并根據 plan_number 的值相應地更新 subGroupPolicyNumber。
我可以迭代模型串列,但不知道如何更新模型串列中的值。請幫我更新“claimDataList”中的值
uj5u.com熱心網友回復:
撰寫一個方法來更新一個模型。然后您可以遍歷模型串列,過濾它們并為恢復模型呼叫此方法。我更喜歡流:
claimDataList.stream()
.filter(model -> model.PLAN_NUMBER == null)
.forEach(this::planNumberNull);
private void planNumberNull(WADataModel model) {
model.SUBGROUP_POLICY_NUMBER = ...
}
uj5u.com熱心網友回復:
for(WADataModel model : claimDataList){
if(model.PLAN_NUMBER==null){
model.SUBGROUP_POLICY_NUMBER = <>
}
}
uj5u.com熱心網友回復:
如果我理解了,您要檢查值“ PLAN_NUMBER ”是否不為空,然后填充變數“ SUBGRUOUP_POLICY_NUMBER ”。
您可以使用lambdas(從 j8 開始)執行此操作,這是最佳的。
claimDataList.stream()
.filter(x -> x.getPLAN_NUMBER() != null)
.forEach(y -> y.setSUBGROUP_POLICY_NUMBER(y.getPLAN_NUMBER()));
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/520504.html
標籤:爪哇春天弹簧靴
