resultSet.getString()方法的传参的问题,大神们帮帮忙

磨刀霍霍向编程 2013-09-06 11:06:02
while(rs.next()){
%>
<tr>
<%

for(int j=0;j<fieldList.size();j++){
Attribute attribute2 =(Attribute)fieldList.get(j);
String x='"'+attribute2.getStringValue()+'"';

String y = "yhm";

%>
<td><%out.println(rs.getString(x)); %></td> // 这行正确,能取到相应的列的值
<td><%out.println(rs.getString(y)); %></td> //但是这行却报错,取不到y对应的列的值

<%
}
%>
<%
}
%>



这是为什么啊 ,resultSet.getString()方法不能传变量进去吗?
...全文
416 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
竟然没人知道?
  • 打赏
  • 举报
回复
x.equals("yhm")为true,两者是相等啊,怎么回事这是?搞不懂啊
Cute_Tiger 2013-09-09
  • 打赏
  • 举报
回复
你确定你的x像y那样写死了,String y = "yhm"; 然后<td><%out.println(rs.getString(x)); %></td> 能出来?出不来就是rs问题了
nmyangym 2013-09-07
  • 打赏
  • 举报
回复
看看x的长度是多少? 或者用x = x.trim(),比较一下x.equals("yhm")
  • 打赏
  • 举报
回复
  • 打赏
  • 举报
回复
打印x得到的是 字符串yhm。 x和y都是字符串yhm 只不过x是通过attribute2.getStringValue()获取到的。而String y="yhm"这样写死了的。getString(x)报找不到列名,而getString(y)却正常。不知为什么?这跟形参和实参有关系吗???????????
末日哥 2013-09-06
  • 打赏
  • 举报
回复
你打印一下你的x是个什么玩意儿。。
  • 打赏
  • 举报
回复
呼叫各位啊帮帮忙啊
  • 打赏
  • 举报
回复
是,是报列明错误。


我说错问题了,是这样子的:
<td><%out.println(rs.getString(x)); %></td> // 这行不正确,报错,不能取到相应的列的值
<td><%out.println(rs.getString(y)); %></td> //但是这行正确,取到y对应的列的值

其中x是通过String x=attribute2.getStringValue()获取到的。而不是像String y="yhm"这样写死了的





末日哥 2013-09-06
  • 打赏
  • 举报
回复
- -.难道你的x传的不是变量吗。。报的什么错?是不是你的列名不对?
  • 打赏
  • 举报
回复
%>
<tr>
<%

for(int j=0;j<fieldList.size();j++){
Attribute attribute2 =(Attribute)fieldList.get(j);
String x=attribute2.getStringValue();

String y = "yhm";

%>
<td><%out.println(rs.getString(x)); %></td> // 这行正确,能取到相应的列的值
<td><%out.println(rs.getString(y)); %></td> //但是这行却报错,取不到y对应的列的值

<%
}
%>
<%
}
%>



这是为什么啊 ,resultSet.getString()方法不能传变量进去吗?

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧