源码网,源码论坛,源码之家,商业源码,游戏源码下载,discuz插件,棋牌源码下载,精品源码论坛

 找回密码
 立即注册
查看: 283|回复: 12

[JSP编程] 实例讲解JSP获取ResultSet结果集中的数据的方法

[复制链接]

7万

主题

861

回帖

32万

积分

论坛元老

Rank: 8Rank: 8

积分
329525
发表于 2016-4-14 17:21:03 | 显示全部楼层 |阅读模式
这篇文章主要介绍了JSP获取ResultSet结果集中数据的方法,文后还介绍一种遍历ResultSet中的数据并转化为表格的方法,需要的朋友可以参考下

获得所有的记录

<%@page language="java" contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*" %>
<!DOCTYPE html>
<html>
  <head>
    <title>查询所有用户的记录</title>
  </head>
  <body>
    <%
      String url = "jdbc:mysql://localhost:3306/javaweb";//连接数据库的url地址
      String user = "root";//登录数据库的用户名
      String password = "zhangda890126;;";//登录数据库的用户名的密码
      Connection conn = null;
      try{
        Class.forName("com.mysql.jdbc.Driver");//加载JDBC驱动程序
        conn = DriverManager.getConnection(url,user,password);//链接数据库
      }catch(ClassNotFoundException e){
        out.println("找不到驱动类");//抛出异常时,提示信息
      }catch(SQLException e){
        out.println("链接MySQL数据库失败");//处理SQLException异常
      }
      try{
         
        Statement stmt = conn.createStatement();//创建语句对象Statement
        String queryAll = "SELECT * FROM user";//查询所有的用户
        ResultSet rs = stmt.executeQuery(queryAll);
        while(rs.next()){
          int userid = rs.getInt(1);//获取第一个字段userid的值
          String username = rs.getString(2);//获取第二个字段username的值
          String userpassword = rs.getString(3);//获取第三个字段password的值
           
          //打印出所有的用户的信息
          out.println("用户ID:"+userid+" 用户名:"+username+" 用户的密码 "+userpassword+"<br />");
        }
      }catch(SQLException e){
        out.println("查询所有用户信息失败");
      }
    %>
  </body>
</html>

获得所有的记录中的指定字段的记录

<%@page language="java" contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*" %>
<!DOCTYPE html>
<html>
  <head>
    <title>查询所有用户的记录的用户id和用户名</title>
  </head>
  <body>
    <%
      String url = "jdbc:mysql://localhost:3306/javaweb";//连接数据库的url地址
      String user = "root";//登录数据库的用户名
      String password = "zhangda890126;;";//登录数据库的用户名的密码
      Connection conn = null;
      try{
        Class.forName("com.mysql.jdbc.Driver");//加载JDBC驱动程序
        conn = DriverManager.getConnection(url,user,password);//链接数据库
      }catch(ClassNotFoundException e){
        out.println("找不到驱动类");//抛出异常时,提示信息
      }catch(SQLException e){
        out.println("链接MySQL数据库失败");//处理SQLException异常
      }
      try{
         
        Statement stmt = conn.createStatement();//创建语句对象Statement
        String queryAll = "SELECT userid,username FROM user";//查询所有的用户
        ResultSet rs = stmt.executeQuery(queryAll);
        while(rs.next()){
          int userid = rs.getInt(1);//获取第一个字段userid的值
          String username = rs.getString(2);//获取第二个字段username的值
           
           
          //打印出所有的用户的信息
          out.println("用户ID:"+userid+" 用户名:"+username+"<br />");
        }
      }catch(SQLException e){
        out.println("查询所有用户信息失败");
      }
    %>
  </body>
</html>

获得指定起始位置和条数的记录

<%@page language="java" contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*" %>
<!DOCTYPE html>
<html>
  <head>
    <title>获得第二条记录开始的三条记录</title>
  </head>
  <body>
    <%
      String url = "jdbc:mysql://localhost:3306/javaweb";//连接数据库的url地址
      String user = "root";//登录数据库的用户名
      String password = "zhangda890126;;";//登录数据库的用户名的密码
      Connection conn = null;
      try{
        Class.forName("com.mysql.jdbc.Driver");//加载JDBC驱动程序
        conn = DriverManager.getConnection(url,user,password);//链接数据库
      }catch(ClassNotFoundException e){
        out.println("找不到驱动类");//抛出异常时,提示信息
      }catch(SQLException e){
        out.println("链接MySQL数据库失败");//处理SQLException异常
      }
      try{
         
        Statement stmt = conn.createStatement();//创建语句对象Statement
        String queryAll = "SELECT * FROM user limit 1,3";//查询所有的用户
        ResultSet rs = stmt.executeQuery(queryAll);
        while(rs.next()){
          int userid = rs.getInt(1);//获取第一个字段userid的值
          String username = rs.getString(2);//获取第二个字段username的值
          String userpassword = rs.getString(2);//获取第三个字段的password的值
           
          //打印出所有的用户的信息
          out.println("用户ID:"+userid+" 用户名:"+username+" 用户密码:"+userpassword+"<br />");
        }
      }catch(SQLException e){
        out.println("查询所有用户信息失败");
      }
    %>
  </body>
</html>

遍历ResultSet中的数据并转化为表格
在网上找了很久遍历ResultSet中的数据并将其依次填充到一个网页表格中,有说将ResultSet数据转化到一个二维数组中,再依次输出,但二位数组需要提前指定存储大小,不方便扩增。其实用如下方法即可:

while(rs.next()){
    out.println("<tr><td>"+rs.getString(1)+"</td><td>" +rs.getString(2)+"</td><td>"+rs.getString(3)+"</td><td>"
        +rs.getString(4)+"</td><td>"+rs.getString(5)+"</td><td>"+rs.getString(6)+"</td><td>"
        +rs.getString(7)+"</td><td>"+rs.getString(8)+"</td><td>"+rs.getString(9)+"</td><td>"
        +rs.getString(10)+"</td><td>"+rs.getString(11)+"</td><td>"+rs.getString(12)+"</td><tr>");
}

回复

使用道具 举报

1

主题

2万

回帖

79

积分

注册会员

Rank: 2

积分
79
发表于 2022-9-6 08:09:14 | 显示全部楼层
论坛有你更精彩!
回复 支持 反对

使用道具 举报

1

主题

2万

回帖

362

积分

中级会员

Rank: 3Rank: 3

积分
362
发表于 2022-9-8 10:58:21 | 显示全部楼层
呵呵呵呵呵呵
回复 支持 反对

使用道具 举报

7

主题

2万

回帖

398

积分

中级会员

Rank: 3Rank: 3

积分
398
发表于 2022-10-18 10:47:18 | 显示全部楼层
给爸爸爸爸爸爸爸爸爸爸八佰伴八佰伴
回复 支持 反对

使用道具 举报

0

主题

1万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2022-12-19 06:35:14 | 显示全部楼层
而快乐你们快乐马年快乐
回复 支持 反对

使用道具 举报

1

主题

2万

回帖

79

积分

注册会员

Rank: 2

积分
79
发表于 2023-4-25 14:21:56 | 显示全部楼层
来看看怎么样
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2023-8-23 02:01:33 | 显示全部楼层
哦哦哦哦哦哦哦哦哦
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

120

积分

注册会员

Rank: 2

积分
120
发表于 2023-10-2 17:13:09 | 显示全部楼层
还有人在不。。。。。。。。。。啊
回复 支持 反对

使用道具 举报

1

主题

2万

回帖

155

积分

注册会员

Rank: 2

积分
155
发表于 2024-5-24 12:26:33 | 显示全部楼层
还有什么好东西没
回复 支持 反对

使用道具 举报

0

主题

1万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2024-5-25 09:05:23 | 显示全部楼层
老衲笑纳了
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

手机版|小黑屋|网站地图|源码论坛 ( 海外版 )

GMT+8, 2024-11-24 13:46 , Processed in 0.211645 second(s), 26 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表