JSP+Servlet 页面加载时请求数据库,获取信息并显示到页面上,如何处理?求指教! 100
例如,图书管理系统有一个还书页面,要求用户无论通过什么方式(借书后能跳转过去;导航栏选择还书;直接网址栏里面输入……)进入到该页面时,立即请求数据,返回该用户的借书信息并以表格的方式显示在还书页面中。
主要是页面加载的问题
后台查询可调用方法 public static List<BorrowedBookInfo> selectBorrowedBooks(User user);user在登录后会被传到session的User属性中,直接用就是了。
下面有个还书页面的草图(黑框框表示checkbox)
请大神指教!
还有,如果有大神附上代码,请把Java代码和JSP代码分离。 展开
谢谢指教!
现在我对于第一句话还有点问题:我怎么在进入一个jsp页面时先进入servlet?
当我使用request.setAttribute("xxx","object");request.getDispatcher("x.jsp").forword(re,res)时,我怎么判断这个request是给这个x.jsp页面的?需不需要单独写一个servlet?
这样给你说吧,比如你点击了还书这个超链接,超链接你不要写x.jsp,而应该写某个servlet 的url,这个servlet 进行查询数据库处理,把得到的数据设置到request 之后进行forword跳转,forword之前写了哪个jsp页面,request 就是给哪个jsp页面的,这看起来是不是像在跳转到jsp页面之前加上了一层数据处理的功能,这就是著名的mvc设计理念中的控制层了
有代码肯定是极好的。
没代码的话请把思路详细描述一下,尤其是页面加载时请求数据并显示要怎么来做?
无论什么方式进入:跳转到方法而已
2. controller调用service方法,方法中调用selectBorrowedBooks方法,将这个 List<BorrowedBookInfo> list 放置到model中去model.setAttri....("lists",list )
3. jsp使用for each标签循环,展示即可。大概是这样的,其中的单选框之类的,拼进<td>
就行。
<c:forEach items="${lists}" var="BorrowedBookInfo">
<tr>
<td>
${BorrowedBookInfo.属性(bookname)}
</td>
<td>
${BorrowedBookInfo.属性(price)}
</td>
</tr>
.
.
.
</c:forEach>
4。上面的包在一个table中,还书的时候获取选中的行的信息,主要是Id们,传到后台处理,在跳转这个页面就可以了
好累,自己的代码都没有写完
不采纳???