后台报错java.sql.SQLException: Column 'BoardId' not found.

xiaoshuidi123 2012-08-07 12:01:54
我的jsp页面的代码如下,可是运行后只显示了顶部的内容,有java代码的部分却没显示 并且后台显示如题的错误
<body>
<%
String user=(String)session.getAttribute("user");

%>
<center>
<table width="1043" border="0">
<tr>
<td width="60"><div id="my" align="center"><a href="#">技术论坛首页</a></div></td>
<td width="50"><div align="center"><a href="#">资讯</a></div></td>
<td width="50"><div align="center"><a href="#">论坛</a></div></td>
<td width="50"><div align="center"><a href="#">博客</a></div></td>
<td width="50"><div align="center"><a href="#">下载</a></div></td>
<td width="50"><div align="center"><a href="#">搜索</a></div></td>
<td width="50"><div align="center"><a href="#">更多</a></div></td>
<td width="50"><div align="center">欢迎</div></td>
<td width="50"><div align="center"><%=user %></div></td>
<td width="50"><div align="center"><a href="loginout.jsp">退出</a></div></td>
</tr>

<%
Boardinfo bi=new Boardinfo();
ArrayList al=bi.getBoard();
for(int i=0;i<al.size();i++) {
BoardBean bb=(BoardBean)al.get(i);
%>
<tr>
<td><%=bb.getBoardname() %></td><td><%=bb.getBoardid() %></td>
</tr>
<% }%>


</table>
</center>
</body>

其他相关代码为
public ArrayList getBoard(){
ArrayList al=new ArrayList();
try{
Class.forName("com.mysql.jdbc.Driver");
ct=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/user","root","523325");
st=ct.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs=st.executeQuery("select BoardName from board");
while(rs.next()){
BoardBean bb=new BoardBean();
bb.setBoardid(rs.getInt("BoardId"));
bb.setBoardname(rs.getString("BoardName"));
al.add(bb);
}

还有以下的相关代码public class BoardBean {
private int boardid;
private String boardname;
public int getBoardid() {
return boardid;
}
public void setBoardid(int boardid) {
this.boardid = boardid;
}
public String getBoardname() {
return boardname;
}
public void setBoardname(String boardname) {
this.boardname = boardname;
}

}我不知道错在哪 请高手指点哈谢谢

...全文
130 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
iGoodLoser 2012-08-07
  • 打赏
  • 举报
回复
你的表中是否有BoardId这一字段?
风尘中国 2012-08-07
  • 打赏
  • 举报
回复
你查询的具体代码是 rs=st.executeQuery("select BoardName from board");
也就是你只查询了一列boardname存储到rs里面,而后面你又 调用rs.getInt("BoardId")试图从rs读取boardid这个字段,而rs里面没有,所以出错

首先确保board这个表里面有 boardname和boardid这两个字段
第二,修改rs=st.executeQuery("select BoardName from board");
为rs=st.executeQuery("select boardid,boardName from board");
  • 打赏
  • 举报
回复
sql语句改一下
rs=st.executeQuery("select BoardId,BoardName from board");
或者
rs=st.executeQuery("select * from board");
xwz1039542289 2012-08-07
  • 打赏
  • 举报
回复
所查询语句是: rs=st.executeQuery("select BoardName from board");
也就是你只映射了一列boardname存储到rs里面,而后面你又 调用rs.getInt("BoardId")试图从rs读取boardid这个字段,而rs里面没有,所以出错

首先确保board这个表里面有 boardname和boardid这两个字段
第二,修改rs=st.executeQuery("select BoardName from board");
为rs=st.executeQuery("select boardid,boardName from board");
第三,主要区分大小写;
zmwybxzy 2012-08-07
  • 打赏
  • 举报
回复
你的查询语句rs=st.executeQuery("select BoardName from board");
是只查询BoardName这一列的结果,当然不会有“BoardId”啦

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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