【发布时间】:2015-04-16 15:17:06
【问题描述】:
我有一个返回数组列表的方法。但是 Arraylsit 两次显示其值。 代码是-
ArrayList<Double> ref_jsp=new ArrayList<Double>();
public ArrayList<Double> refernece(String name) throws SQLException, ParseException {
String first=name.substring(1,19);
String last =name.substring(24,42);
List<Double> slist = new ArrayList<Double>(map1.keySet());
String s = StringUtils.join(slist, ',');
System.out.println("comma separated string"+s);
try
{
con = getConnection();
stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
String vs2="SQL Query"
stmt.executeQuery(vs2);
rs1 = stmt.getResultSet();
while(rs1.next())
{
ref_jsp.add((rs1.getDouble(1)));
ref_jsp.add((rs1.getDouble(2)));
ref_jsp.add((rs1.getDouble(3)));
ref_jsp.add((rs1.getDouble(4)));
ref_jsp.add((rs1.getDouble(5)));
ref_jsp.add((rs1.getDouble(6)));
ref_jsp.add(rs1.getDouble(7));
ref_jsp.add(rs1.getDouble(8));
ref_jsp.add(rs1.getDouble(9));
ref_jsp.add(rs1.getDouble(10));
ref_jsp.add((rs1.getDouble(11)));
}
}
catch( Exception e )
{
System.out.println("\nException in reference "+e);
}
return ref_jsp;
}
我的Sql查询没问题。我检查了。ref_jsp返回的值显示了两次。请解释我哪里出错了??我的jsp代码敌人显示列表值是-
<%
String ref_name= request.getParameter("ref_logtime");
pageContext.setAttribute("ref_name", ref_name);
ref.FindClosestToMultiplesOfTen(ref_name);
ref.refernece(ref_name);
%>
<table width = "300px" border = "1" cellspacing="2">
<tr><c:forEach var="r" items="${ref.refernece(param.ref_logtime)}">
<td><c:out value="${r}"></c:out></td>
</c:forEach></tr>
</table>
我的输出格式为-
value-1 value-2 value-3 value-4 value-1 value-2 value-3 value-4
【问题讨论】:
-
你能告诉我们你的输出屏幕吗?
-
我真的不明白 scriplets 在你的 jsp 中的作用是什么?
-
实际上,我有另一个显示日历的 jsp 页面。用户从日历中选择日期,该日期进入 sql 查询。所以我使用 scriplet 将选定日期从该 jsp 传递到java类和所需的方法。
-
@SanKrish 我无法显示我的输出图像,因为我的声誉低于 10。但请查看我上面的编辑。我试图给出我的输出视图。
-
你确定,调用方法引用,传递参数 ref_logtime 返回的 ArrayList 只包含 1,2,3,4 个值吗?