【发布时间】:2019-12-19 06:45:28
【问题描述】:
我有一个存储环境列表的数组,我必须从这个列表中获取我现在无法获取的所有环境名称。请参阅下面我的尝试,请帮助我解决这个问题。
<script>
//${environmentList} is getting from backend i.e from modal class in which toString() method has stored with all its contents.
var envLength = `${environmentList}`.length;
var allEnv = `${environmentList}`;
console.log("All Environments : " + allEnv);
console.log("Length of environments : " + envLength);
for(let i = 0 ; i < envLength ; i++){
let all = `${allEnv[i].environmentName}`;
console.log("Environment Name : " + all[i]);
}
</script>
toString() 方法:
@Override
public String toString() {
return "EnvironmentModel [environmentId=" + environmentId + ", environmentName=" + environmentName
+ ", environmentDesc=" + environmentDesc + ", hostAddress=" + hostAddress + ", environmentURL="
+ environmentURL + ", configFileName=" + configFileName + ", configFilePath=" + configFilePath
+ ", companyId=" + companyId + ", createdBy=" + createdBy + ", createdAt=" + createdAt
+ ", lastUpdatedBy=" + lastUpdatedBy + ", lastUpdatedAt=" + lastUpdatedAt + ", elementFileName="
+ elementFileName + ", elementFilePath=" + elementFilePath + ", envStatus=" + envStatus + ", projectId="
+ projectId + ", project=" + project + "]";
}
输出:
所有环境:
[EnvironmentModel [environmentId=345, environmentName=MM_Env_1, environmentDesc=Environment_1, hostAddress=null, environmentURL=null, configFileName=SystemFile.xml, configFilePath=/env_files/MM_Env_1, companyId=1, createdBy=2, createdAt=2019 -12-18 16:39:38.595, lastUpdatedBy=2, lastUpdatedAt=2019-12-18 16:42:13.259, elementFileName=ElementFile.xml, elementFilePath=/env_files/MM_Env_1, envStatus=1, projectId=null, project= [Project [projectName=Magic Matrix, projectDescription=Magic Matrix 是 Solitera Software Company 的重要且强大的工具。projectId=23]]], EnvironmentModel [environmentId=346, environmentName=MM_Env_2, environmentDesc=Environment_2, hostAddress=null, environmentURL=null, configFileName=soapAPI_request_GetLyrics.xml, configFilePath=/env_files/MM_Env_2, companyId=1, createdBy=2, createdAt=2019-12-18 16:43:10.59, lastUpdatedBy=2, lastUpdatedAt=2019-12-18 16 :43:58.522, elementFileName=Element.xml, elementFilePath=/env_files/MM_Env_2, envStatus=1, projectId =null, project=[Project [projectName=Magic Matrix, projectDescription=Magic Matrix 是 Solitera Software Company 的重要且强大的工具。projectId=23]]], EnvironmentModel [environmentId=347, environmentName=TM_Env_1, environmentDesc=TM_Env_1 , hostAddress=null, environmentURL=null, configFileName=showcasetestData.xml, configFilePath=/env_files/TM_Env_1, companyId=1, createdBy=2, createdAt=2019-12-18 16:44:33.783, lastUpdatedBy=2, lastUpdatedAt=2019 -12-18 16:44:47.09, elementFileName=soapAPI_request_TempConvert.xml, elementFilePath=/env_files/TM_Env_1, envStatus=1, projectId=null, project=[Project ...
环境长度: 2235
环境名称: undefined
【问题讨论】:
-
让您的生活更轻松,并使用已建立的数据交换格式,例如 JSON。
-
@Sandeep Kumar:我也用 'var' 代替了 'let',但没有用。我得到相同的输出。
-
如果您可以控制后端,我同意@Teemu 并建议您使用 JSON。
-
@DanielderGrosse: 是的,你们俩都是对的,但问题是这样 -> 以前,我使用过 Jackson JSON 解析器,但不知何故它抛出了 catch 异常,只给了我 null 值,为了简单的目的,我已经使用了 toString() 方法,在这个的帮助下,我能够得到环境列表。
-
这确实应该在服务器端修复。我建议您提出一个新问题,即为什么您的 Java 代码中的 JSON 转换失败,并从根源上解决问题,而不是创建一个 hack。
标签: javascript java spring jsp