SSH框架,将数据库中的书名bookname全部显示在JSP页面上,如何写代码 15

做的是一个售书系统,现在数据库中有书籍的信息,怎么将书籍的信息显示在JSP上?我在dao层写了下面这个,不知道有没错。publicListsearchbook(Listl... 做的是一个售书系统,现在数据库中有书籍的信息,怎么将书籍的信息显示在JSP上?我在dao层写了下面这个,不知道有没错。
public List searchbook(List list) {
String bookName = null;String bookAuthor = null;String bookPress = null;String bookPrice = null;String bookAmount = null;
Session session=HibernateUtils.getSession();
try{
Query query=(Query) session.createQuery("from t_book as b where b.bookName = ? "+"and b.bookAuthor = ?"+"and b.bookPress"+"and b.bookPrice"+"and b.bookAmount");

query.setString(0, bookName);
query.setString(1, bookAuthor);
query.setString(2, bookPress);
query.setString(3, bookPrice);
query.setString(4, bookAmount);
list=query.list();

}catch(Exception e){
e.printStackTrace();
}finally{
HibernateUtils.closeSession(session);
}
return list;

}
展开
 我来答
zzg_zcbm_zzg
2014-06-03 · 超过15用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:23.3万
展开全部
我怎么觉的你的函数就有问题呀
public List searchbook(List list) ;参数list是干嘛用的,

看函数是查询用的,那参数就应该是一个呀,就算是多个条件,也应该是一个结构体,或多个参数,或是实体类
如 public List searchbook(<T> bookName)

public List searchbook(<T> bookName,<T> bookPrice)
这样的

返回值是数组,那里面的对象就应该直接转换成 实体类型的
你这样用的时候还的再转换

函数重新定义一下

public List searchbook(<T> objbook) {
String bookName = null;
String bookAuthor = null;
String bookPress = null;
String bookPrice = null;
String bookAmount = null;
List<T> list=new ArrayList<T>();
try{

条件是一个的话
Query query=(Query) session.createQuery("from t_book as b where b.bookName = ?
条件是多个的话 。。。。。
"+"and b.bookAuthor = ?

/*
//"+"and b.bookAuthor = ?"+"and b.bookPress"+"and b.bookPrice"+"and b.bookAmount
*/
");

query.setString(0,objbook. bookName);
query.setString(1, objbook.bookAuthor);

}catch(Exception e){
e.printStackTrace();
}finally{
HibernateUtils.closeSession(session);
}

这里肯定有问题,需要强制转换下
用循环语句逐步添加
list.add(query.list());

return list;
}

jsp页面

JSP页面用for循环list就行了

<table >
<%
List l= searchbook(<T> objbook);
for (int i = 0; i < l.size(); i++) {
%>

<tr>

<td>
<% =l[i].bookName %>
</td>
<td>
<% =l[i].bookAuthor %>
</td>

.............................................下来就不写了

</tr>
<%
}
%>

</table>
追问
刚刚试了一下,还有一些错误,我学得有点差,能教教我么?分我可以加,你能帮我写一个能运行的吗?只要能从数据库中获取数据,在JSP页面显示出来就好,用SSH框架的。
追答
 list = new java.util.ArrayList();
list.add(new Tbook("aa", 42.5, "abcdefgffffffffff"));
list.add(new Tbook("bb", 45.5, "abcdefggggggggggg"));
list.add(new Tbook("cc", 37.5, "abcdefghhhhhh"));// 声明一个集合对象,并且添加进内容
%>

书籍名称
书籍单价
书籍作者

只要理解了上面的jsp代码,页面显示就没问题了,ssh框架就没必要用了,找麻烦不是,框架返回的也是个list类型的集合,循环显示出来就好
冰火两重天
2014-06-03 · TA获得超过1425个赞
知道小有建树答主
回答量:1489
采纳率:0%
帮助的人:988万
展开全部
JSP页面用forEach循环list就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式