如何实现同参数多方法使用呢?java

这是一个批量导入功能,exl转换成xml.

ReadXMLTool tReadXMLTool = new ReadXMLTool(XmlFileName);
这个参数就是解析出来的xml数据,如下图.可是我在第二个set方法里面 返回的时候没有参数.有大神解答一下吗


ReadXMLTool tReadXMLTool = new ReadXMLTool(XmlFileName);
        tReadXMLTool.query(ParsePath);
        this.mErrors.clearErrors();

        FMRiskDeParseXml tFMRiskDeParseXml = new FMRiskDeParseXml();
        //险种定义表
        mFMRiskSet = tFMRiskDeParseXml.getFMRiskSet(tReadXMLTool, mGlobalInput);
        //险种缴费方式表
        mFMRiskPayIntvSet = tFMRiskDeParseXml.getFMRiskPayIntvSet(tReadXMLTool, mGlobalInput);
        //险种保险期间表
        mFMRiskYearSet = tFMRiskDeParseXml.getFMRiskYearSet(tReadXMLTool, mGlobalInput);
        //险种缴费期间表
        mFMRiskPayPeriodSet = tFMRiskDeParseXml.getFMRiskPayPeriodSet(tReadXMLTool, mGlobalInput);

这是跟第一个set方法是一样的,可是while循环迭代>0 没有数据
public FMRiskYearSet getFMRiskYearSet(ReadXMLTool nodeInsured, GlobalInput tGlobalInput) {


    FMRiskYearSchema tFMRiskYearSchema = null;
    FMRiskYearSet tFMRiskYearSet = new FMRiskYearSet();
    nIndex = 0;
    String tempValue = "";
    String tBatchNo = PubFun1.getSerialNo();

    while (nodeInsured.next()) {
        nIndex++;
        tFMRiskYearSchema = new FMRiskYearSchema();

        tempValue = parseNode(nodeInsured, PATH_FCCont_RiskCode).trim();
        if (tempValue == null && "".equals(tempValue) && !checkField(tempValue, "产品编码")) {
            return null;
        }
        tFMRiskYearSchema.setRiskCode(tempValue);

        tempValue = parseNode(nodeInsured, PATH_FCCont_OutRiskCode).trim();
        if (tempValue == null && "".equals(tempValue) && !checkField(tempValue, "外部产品编码")) {
            return null;
        }
        tFMRiskYearSchema.setOutRiskCode(tempValue);

        tempValue = parseNode(nodeInsured, PATH_FCCont_RiskYearMode).trim();
        if (tempValue == null || "".equals(tempValue)) {
            CError.buildErr(this, "保险期间方式" + nIndex + "行");
            return null;
        }
        tFMRiskYearSchema.setRiskYearMode(tempValue);

        tempValue = parseNode(nodeInsured, PATH_FCCont_RiskYearType).trim();
        if (tempValue == null || "".equals(tempValue)) {
            CError.buildErr(this, "保险期间单位" + nIndex + "行");
            return null;
        }
        tFMRiskYearSchema.setRiskYearType(tempValue);

        tempValue = parseNode(nodeInsured, PATH_FCCont_Value).trim();
        if (tempValue == null || "".equals(tempValue)) {
            CError.buildErr(this, "保险期间" + nIndex + "行");
            return null;
        }
        tFMRiskYearSchema.setValue(tempValue);

        tFMRiskYearSet.add(tFMRiskYearSchema);
    }
    return tFMRiskYearSet;
}
 不知道为什么,求大神用经验解答一下,谢谢

0

1个回答

返回没哟参数,是不是这个方法内部有什么错误呢?
此外,你的逻辑是不是使用tReadXMLTool,在不同的方法中进行不同的解析处理最终得到一个对应类型的结果集?
总的来看,思路没问题,所以建议仔细分析下每个方法中的解析流程。

0
weixin_44929024
�Tsang. 这些方法只是要的值不一样 存的表不一样 方法是一样的 进入第二个方法while循环 数据为零 直接就返回了 所以没有数据 上面同样的方法就可以有数据 就是不知道为啥第二条没有
2 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!