JSP页面中 通过ACTION向DAO中传了一个字符行参数 为什么返回值总是NULL

DAO页面 goodsDao.java
public goods getGoodsInfoBytypeName(String typeName) throws SQLException {
OracleConn c = new OracleConn();
Connection conn = c.getConnetion();
PreparedStatement ps = conn
.prepareStatement("select * from goods where typeName=?");
ps.setString(1, typeName);
ResultSet rs = ps.executeQuery();
if (rs.next()) {
goods g = new goods();
g.setGoodsName(rs.getString("goodsName"));
g.setPrice(rs.getFloat("price"));
return g;
}
return null;

}

没有查到数据,返回为空啊追问

那是哪里出错了 才没查到数据的呢

追答

肯定是你传进去的稀有物种没有在数据库里面查到数据啊,去数据库执行SQL看看

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-12-01
具体点。说明。追问

JSP页面 index.jsp

第2个回答  2011-12-01
你好。
可以说得具体些吗?追问

前略 goodsDao dao = new goodsDao();
try {
goods g = dao.getGoodsInfoBytypeName(request.getParameter("typeName"));
if (g != null) {
request.setAttribute("g", g);
return mapping.findForward("ok");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return mapping.findForward("sorry");
}

追答

你好。
PreparedStatement ps = conn
.prepareStatement("select * from goods where typeName=?");
这一句让我觉得有点问题,似乎问号前是有个冒号的,冒号是在等号前还是后你可以试试。
希望对你有所帮助。

第3个回答  2011-12-02
是哪个对象为空啊? rs对象还是其它的对象呢?追问

rs对象

追答

rs对象为空,证明你的SQL语句有问题!

相似回答
大家正在搜