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

做的是一个售书系统,现在数据库中有书籍的信息,怎么将书籍的信息显示在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;

}

我怎么觉的你的函数就有问题呀
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类型的集合,循环显示出来就好

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-06-03
JSP页面用forEach循环list就行了

SSH框架,将数据库中的书名bookname全部显示在JSP页面上,如何写代码
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 = ?条件是多个的话 ...

在ssh框架中,我把数据已经插入到数据库中了,但是就是不知道如何从中取出...
在java代码中将数据查出放到list集合里面 把list集合放到session里面 在jsp页面里面用 <c:forEach items="${pagination.allentities}" var="entity"> {entity.cname} {entity.pass} {entity.name} {entity.gender} {entity.birth} {entity.address} {entity.postcode} {...

...跳转到index.jsp,index页面用了frameset框架
看你的代码,在页面上的呈现应该是上边一个YHTop.jsp,下左是YHMenu.jsp,下右是manage.jsp,想在manage.jsp里从request中获取"list"。假设你有一个index.action在里边写了request.setAttribute("list", list);然后跳转到index.jsp,正如你现在描述的,只能在index.jsp中得到"list",因为request请求到...

如何将mysql数据库表中的内容显示在Web页面中,用什么软件实现呢?_百度...
1、首先我们使用数据库连接工具HeiDiSQL来连接本机的mysql数据库,2、使用该工具创建一个test数据库,3、在该数据库中创建一张student表,该表中有id、name和age字段,我们同时给数据库添加数据,如下图所示。4、我们创建一个Student类,并为该类分别创建id、name和age属性,并用private修饰符进行限定。

如何将mysql数据库表中的内容显示在Web页面中,用什么软件实现呢?_百度...
可以采用SSH的开发框架,将mysql数据库的驱动等相关信息写到框架中,编写配置文件,映射文件等,然后在html或者jsp页面上编写相应的字段,在tomcat中加载相应的页面就能进行显示。建的如果是java项目,只需要引入mysql-connector-java-5.1.10-bin.jar就可以运行java项目。建的如果是web工程,当Class.forName(...

ssh整合,jsp页面动态生成,如何传递页面生成的动态参数?
那么多checkbox的结果我不可能封装成一个类吧?你不能用数组么~

ssh框架,jsp页面的标签是
name="%{#a.itemNo}" 这里面是变量的,你要知道是什么才可以 后台你可以 String name = request.getParameter("name里面的");或者 (Username 也是 name里面的)private String Username;setting gettting 方法 ,下面就可以使用了

求一个SSH框架的JAVAWEB项目
首先将下面代码COPY下来写成一个js;<!-- 开始--> \/\/自动补全 \/\/autoInput 自动补全输入组件ID \/\/自动补全UL列表ID function AutoComplete(autoInputId, autoULId) { var child = null;\/\/获取服务器数据value文本框输入值,list数据库返回集合,valueProperty使用list对象的那个属性作为vlaue值 this....

如何用ssh三大框架给jsp页面分页
在ssh中主要是有hibernate来分页的 \/\/执行查询语句 Query query = session.createQuery(HQL);\/\/设置从哪个位置开始 setFirstResult(firstResult);\/\/这个是查出来的条数 setMaxResults(maxResult);很简单,就这几句话就好了

ssh登录成功后,怎样在jsp页面上获取用户信息?
回答:前台session取就好了! ------解决方案--------------------------------------------------------在登录的action中将用户名存到session中,在页面上获取,如果session有值就是登录了, ------解决方案---------------------------------------...

相似回答