jdbc连接mysql,查询结果集

  1. package com.examples.jdbc.o5_结果集查询;
  2. import java.sql.*;
  3. import java.util.ResourceBundle;
  4. /*
  5. jdbc遍历输出结果集
  6. */
  7. public class Test {
  8. public static void main(String[] args) {
  9. resultSet();
  10. }
  11. //jdbc查询结果集
  12. public static void resultSet(){
  13. //资源绑定器获取配置文件属性
  14. ResourceBundle resourceBundle = ResourceBundle.getBundle("config/jdbc");
  15. String driver = resourceBundle.getString("driver");
  16. String url = resourceBundle.getString("url");
  17. String userName = resourceBundle.getString("userName");
  18. String passWord = resourceBundle.getString("passWord");
  19. Connection connection = null;
  20. Statement statement = null;
  21. ResultSet rs = null;
  22. try {
  23. //1.
  24. Class.forName(driver);
  25. //2.
  26. connection = DriverManager.getConnection(url, userName, passWord);
  27. //3.
  28. statement = connection.createStatement();
  29. /*
  30. 4. 注意:executeQuery()执行 -- 查
  31. executeUpdate()执行 -- 增删改
  32. */
  33. String sql = "select * from student";
  34. rs = statement.executeQuery(sql);
  35. //5. 遍历输出结果集
  36. resultSetOutByNum(rs);
  37. //resultSetOutByName(rs);
  38. } catch (ClassNotFoundException | SQLException e) {
  39. e.printStackTrace();
  40. }finally {
  41. //6.
  42. if(rs != null){
  43. try {
  44. rs.close();
  45. } catch (SQLException e) {
  46. e.printStackTrace();
  47. }
  48. }
  49. if(statement != null){
  50. try {
  51. statement.close();
  52. } catch (SQLException e) {
  53. e.printStackTrace();
  54. }
  55. }
  56. if(connection != null){
  57. try {
  58. connection.close();
  59. } catch (SQLException e) {
  60. e.printStackTrace();
  61. }
  62. }
  63. }
  64. }
  65. //按照列号输出, jdbc编号从1开始
  66. public static void resultSetOutByNum(ResultSet rs) throws SQLException {
  67. int id, sage;
  68. String sname;
  69. while(rs.next()){
  70. id = rs.getInt(1);
  71. sname = rs.getString(2);
  72. sage = rs.getInt(3);
  73. System.out.println("id: " + id + " sname: " + sname + " sage: " + sage);
  74. }
  75. //rs的next已经走到查询结果的结尾,并没有自动回到最初指向的位置
  76. }
  77. //按照列名输出, 参考输出结果中的最终列名,按照列名查找更具有健壮性
  78. public static void resultSetOutByName(ResultSet rs) throws SQLException {
  79. int id, sage;
  80. String sname;
  81. while(rs.next()){
  82. id = rs.getInt("id");
  83. sname = rs.getString("sname");
  84. sage = rs.getInt("sage");
  85. System.out.println("id: " + id + " sname: " + sname + " sage: " + sage);
  86. }
  87. }
  88. }

jdbc 05: 查询结果集的更多相关文章

  1. JDBC_06_处理查询结果集

    JDBC处理查询结果集 * ResultSet resultSet=null 结果集对象 * executeQuery(select) 执行SQL查询语句需要的使用executeQuery方法 * i ...

  2. JDBC 资源绑定器 ,处理查询结果集

    使用资源绑定器绑定属性配置 实际开发中不建议把连接数据库的信息写死到Java程序中 //使用资源绑定器绑定属性配置 ResourceBundle bundle = ResourceBundle.get ...

  3. 完整的jdbc查询结果集编码

    public static ArrayList<HashMap<String,Object>> query(Connection conn,String sql, Object ...

  4. Eclipse中java获得mysql的查询结果集

    不废话,先上代码,再上解释说明 package com.ningmeng; import java.sql.*; /** * 1:获取查询结果集 * @author biexiansheng * */ ...

  5. Spring JdbcTemplate 查询结果集Map反向生成Java实体(转)

    原文地址:Spring JdbcTemplate 查询结果集Map反向生成Java实体 以前写过一篇文章吐槽过Spring JdbcTemplate的queryForList方法(参见:http:// ...

  6. 使用元数据简化jdbc代码---查询操作(用到反射)

    使用元数据简化jdbc代码---查询操作(用到反射) 一  思路分析 简化就是把共同的地方提取出来并放到一个方法里,在用到时只要调用就ok了,上一篇介绍了更新的操作,而查询的操作相对来说比较复杂,因为 ...

  7. JDBC分页查询及实现

    当数据过多时,一页之内是无法显示的,因此需要进行分页显示. (一)分页技术实现: 物理分页: - 在数据库执行查询时(实现分页查询),查询需要的数据--依赖数据库的SQL语句 - 在sql查询时,从数 ...

  8. [原创]java WEB学习笔记109:Spring学习---spring对JDBC的支持:使用 JdbcTemplate 查询数据库,简化 JDBC 模板查询,在 JDBC 模板中使用具名参数两种实现

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  9. mysql 根据查询结果集更新

    声明:  MySQL4.0之后的版本可以支持下面sql语句进行更新操作 应用场景: 一个表中的字段需要根据查询结果集进行更新,或者从另一表查询获得  其本质还是更新的数据需要查询获得. 例如: use ...

随机推荐

  1. Linux服务器如何识别移动硬盘?

    序言 通常我们使用的移动硬盘或U盘一般都是ntfs或fat32的文件系统,常跟服务器打交道的小伙伴,会经常遇到把移动硬盘或U盘上的数据拷贝到Linux服务器上.绝大多数Linux发行版内核支持fat3 ...

  2. p2p-tunnel 打洞内网穿透系列(一)客户端配置及打洞

    系列文章 p2p-tunnel 打洞内网穿透系列(一)客户端配置及打洞 p2p-tunnel 打洞内网穿透系列(二)TCP转发访问远程共享文件夹 p2p-tunnel 打洞内网穿透系列(三)TCP转发 ...

  3. CRM项目的整理-----第二篇

    1.项目的登录 1.1 app创建二级路由 2.登录页面   http://www.jq22.com/

  4. EF Core 配置模型

    0 前言 本文的第一节,会概述配置模型的作用(对数据模型的补充描述). 第二节描述两种配置方式,即:数据注释(data annotations)和 Fluent API 方式. 第三节开始,主要是将常 ...

  5. 虚拟 DOM 与 DOM Diff

    虚拟 DOM 与 DOM Diff 本文写于 2020 年 9 月 12 日 虚拟 DOM 在今天已经是前端离不开的东西了,因为他的好处实在是太多了. 在<高性能 JavaScript>一 ...

  6. AC自动机:Tire树+KMP

    简介 AC自动机是一个多模式匹配算法,在模式匹配领域被广泛应用,举一个经典的例子,违禁词查找并替换为***.AC自动机其实是Trie树和KMP 算法的结合,首先将多模式串建立一个Tire树,然后结合K ...

  7. 【FAQ】申请华为运动健康服务授权的4个常见问题及解决方法

    华为运动健康服务(HUAWEI Health Kit)提供原子化数据开放,在获取用户对数据的授权后,应用可通过接口访问运动健康数据,对用户数据进行增.删.改.查等操作,为用户提供运动健康类数据服务.这 ...

  8. Java有根儿:Class文件以及类加载器

    JVM 是Java的基石,Java从业者需要了解.然而相比JavaSE来讲,不了解JVM的一般来说也不会影响到工作,但是对于有调优需求或者系统架构师的岗位来说,JVM非常重要.JVM不是一个新的知识, ...

  9. Flink使用Pod Template将状态快照(Checkpoint、Savepoint)存储在NFS

    背景 Flink 版本 1.13.3,使用 native k8s 部署模式,原采用 HDFS 作为状态快照(Checkpoint.Savepoint)的存储地址,但是由于仅使用了其 HDFS 作为状态 ...

  10. TypeScript 泛型(generic) 入门介绍

    TypeScript 泛型函数 下面来创建第一个使用泛型的例子:identity函数.这个函数会返回任何传入它的值.你可以把这个函数当成是echo命令.不用泛型的话,这个函数可能是下面这样: func ...