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

所属分类: 网络编程 / JSP编程 阅读数: 1661
收藏 0 赞 0 分享

获得所有的记录

<%@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>");
}

更多精彩内容其他人还在看

table中点击表头实现排序的功能示例介绍

获取上次点击的表头的名称和这次点击的表头的名称做比较,如果两者相同就按原先相反的顺序排列,否则新列升序排列
收藏 0 赞 0 分享

jsp防止跨域提交数据的具体实现

这篇文章主要介绍了jsp防止跨域提交数据的具体实现,需要的朋友可以参考下
收藏 0 赞 0 分享

解决jsp页面使用网络路径访问图片的乱码问题

这篇文章主要介绍了jsp页面使用网络路径访问图片的乱码问题的解决方法 ,需要的朋友可以参考下
收藏 0 赞 0 分享

在jsp页面如何获得url参数

这篇文章主要介绍了在jsp页面获得url参数的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

几种防止表单重复提交的方法

表单重复提交是在多用户Web应用中最常见的一个问题,很多场合都会遇到这种情况,下面与大家分享下防止表单重复提交的几种策略
收藏 0 赞 0 分享

struts2集成javamail发邮件示例详解

这篇文章主要介绍了struts2集成javamail发邮件示例,需要的朋友可以参考下
收藏 0 赞 0 分享

不让tomcat显示目录文件列表的配置方法

这篇文章主要介绍了不让tomcat显示目录文件列表的配置方法,这里需要修改conf/web.xml文件,需要的朋友可以参考下
收藏 0 赞 0 分享

jsp使用cookie存储中文示例分享

这篇文章主要介绍了jsp使用cookie存储中文示例,需要的朋友可以参考下
收藏 0 赞 0 分享

jsp中include指令静态导入和动态导入的区别详解

这篇文章主要介绍了jsp中include指令静态导入和动态导入的区别,通过示例和图文讲解可以更好的看出他们的区别,需要的朋友可以参考下
收藏 0 赞 0 分享

jsp中文显示问号问题解决方法

jsp中想要输出的中文被显示成问号?在eclipse-windows- preferences中搜索jsp,Encoding选项中选择 Chinese,此问题便可解决
收藏 0 赞 0 分享
查看更多