我有一个二维数组,它将结果集中的值保存为:
while (rs.next())
{
for( j=0; j<3; j++)
{
a[i][j] = rs.getString(j+1);
}
i++;
}
return a;
我在jsp页面中显示为 -
<select name="ref_name">
<c:forEach var="aff" items="${obj.connect()}">
<option value="${aff}">${aff}</option>
</c:forEach>
</select>
其中obj是bean id,connect是返回String [] []的方法。但是当我运行它时,我得到的值是[Ljava.lang.String@381a9c。 我知道这是显示但不是值的数组的引用。如何纠正它?
答案 0 :(得分:1)
当您尝试迭代Map
时,您需要访问其键和值,
<select name="ref_name">
<c:forEach var="aff" items="${obj.connect()}">
<option value="${aff.key}">${aff.value}</option>
</c:forEach>
</select>
将打印地图中的值。
修改:
根据您在问题中的编辑来访问2D
数组,只需在数组中迭代数组
<select name="ref_name">
<c:forEach var="aff" items="${obj.connect()}" >
<c:forEach var="secondVar" items="${aff}" >
<option value="${secondVar}">${secondVar}</option> // printing the value here
</c:forEach>
</c:forEach>
</select>
希望这会有所帮助!!