JSP执行数据库查询,然后将查询结果用html表格的形式显示出来,都怎样做啊,请给出代码
1、在后台定义一个Servlet或者Action,接收jsp的参数去数据库查询数据,返回List
2、将从数据库查询的数据放在request中,如request.setAttribute("studentList",studentList),输出到对应的jsp页面。
3、在jsp页面引入jstl标签,定义好一个html表格头
4、用jstl获取后台查询的数据,利用<c:foreach>标签循环输出到表格的<tr>中。
示例:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><html>
<body>
<table class="table table-bordered" >
<tr>
<th style="text-align:center;width:2%">序号</th>
<th style="text-align:center;width:5%">姓名</th>
<th style="text-align:center;width:6%">年龄</th>
</tr>
<c:forEach items="${studentList}" var="student" varStatus="status">
<tr>
<td style="text-align:center;">${status}</td>
<td style="text-align:center;">${student.username}</td>
<td style="text-align:center;">${student.age}</td>
</tr>
</c:forEach>
</table>
</body>
</html>
温馨提示:答案为网友推荐,仅供参考
第1个回答 2010-07-09
最常用的就是使用小脚本,把从数据库中查出的数据保存在一个List集合中,然后在jsp页面中遍历这个集合如:
<table><tr><th>数据库中的数据</th></tr>
<% XXXDao dao=new XXXDao();//这个应该能看懂吧,是和数据库连接的类
List<String> list=dao.getAllString();//调用XXXDao类中的getAllString方法,得到数据库中的信息,并保存到List泛型集合中
for(String str:list){//遍历集合
%>//一下为html标签,不能写在小脚本里面,所以在次结束小脚本,但for的后}没有结束
<tr><td><%=str %></td></tr>//每次循环都有一行,且用表达式为单元格填值,
<% } %>//在次写上for的}表示,循环到这里后开始下次循环...
</table>//结束table
这是我就在这个框里写的,基本就是这么个形式.你要是能看懂的话,就把其中的东西换成是你自己的,试着写写,多自己试试.这个东西不难,可以加我好友,继续讨论.本回答被提问者和网友采纳
<table><tr><th>数据库中的数据</th></tr>
<% XXXDao dao=new XXXDao();//这个应该能看懂吧,是和数据库连接的类
List<String> list=dao.getAllString();//调用XXXDao类中的getAllString方法,得到数据库中的信息,并保存到List泛型集合中
for(String str:list){//遍历集合
%>//一下为html标签,不能写在小脚本里面,所以在次结束小脚本,但for的后}没有结束
<tr><td><%=str %></td></tr>//每次循环都有一行,且用表达式为单元格填值,
<% } %>//在次写上for的}表示,循环到这里后开始下次循环...
</table>//结束table
这是我就在这个框里写的,基本就是这么个形式.你要是能看懂的话,就把其中的东西换成是你自己的,试着写写,多自己试试.这个东西不难,可以加我好友,继续讨论.本回答被提问者和网友采纳
第2个回答 2016-01-09
首先下载相应的jar包。
建立数据库连接类,
新建一个类,属性设置表里的每个字段。假设为user类
再建一个类,假设名为UserImpl和相应的sql查询方法。查询结果用ArrayList保存
在jsp页面中,java脚本,调用该方法
<table>
<%
UserImpl odi=new UserImpl();
实例化此类,设其对象名为odi
ArrayList<user> h=(ArrayList <user>)odi.方法
for(User ul:h)
{
%>
<tr>根据相应的情况写</tr>
<%}%>
</table>
第3个回答 2020-03-12
最常用的就是使用小脚本,把从数据库中查出的数据保存在一个List集合中,然后在jsp页面中遍历这个集合如:
<table><tr><th>数据库中的数据</th></tr>
<%
XXXDao
dao=new
XXXDao();//这个应该能看懂吧,是和数据库连接的类
List<String>
list=dao.getAllString();//调用XXXDao类中的getAllString方法,得到数据库中的信息,并保存到List泛型集合中
for(String
str:list){//遍历集合
%>//一下为html标签,不能写在小脚本里面,所以在次结束小脚本,但for的后}没有结束
<tr><td><%=str
%></td></tr>//每次循环都有一行,且用表达式为单元格填值,
<%
}
%>//在次写上for的}表示,循环到这里后开始下次循环...
</table>//结束table
这是我就在这个框里写的,基本就是这么个形式.你要是能看懂的话,就把其中的东西换成是你自己的,试着写写,多自己试试.这个东西不难,可以加我好友,继续讨论.
<table><tr><th>数据库中的数据</th></tr>
<%
XXXDao
dao=new
XXXDao();//这个应该能看懂吧,是和数据库连接的类
List<String>
list=dao.getAllString();//调用XXXDao类中的getAllString方法,得到数据库中的信息,并保存到List泛型集合中
for(String
str:list){//遍历集合
%>//一下为html标签,不能写在小脚本里面,所以在次结束小脚本,但for的后}没有结束
<tr><td><%=str
%></td></tr>//每次循环都有一行,且用表达式为单元格填值,
<%
}
%>//在次写上for的}表示,循环到这里后开始下次循环...
</table>//结束table
这是我就在这个框里写的,基本就是这么个形式.你要是能看懂的话,就把其中的东西换成是你自己的,试着写写,多自己试试.这个东西不难,可以加我好友,继续讨论.
第4个回答 2010-07-09
比如结果是放在recordSet中
<table >
<%
while(rs.next()){
%>
<tr>
<td><%=rs.getInt(0)%></td>
</tr>
<%}%>
</table>
<table >
<%
while(rs.next()){
%>
<tr>
<td><%=rs.getInt(0)%></td>
</tr>
<%}%>
</table>