20155322 《Java程序设计》课堂实践项目 数据库-3-4

数据库-3

实践要求

  • 参考教材代码完成下面的要求,提交能连接到world的截图(有学号水印),并提交代码的码云链接。查询world数据库,获得New Jessey州所有城市的总人口数。

    实践步骤

    我并没有在MessageDAO上修改,而是直接在之前的Demo上加入了:

            Statement stmt = conn.createStatement(); //创建Statement对象String sql = "SQL语句";    //要执行的SQLResultSet rs = stmt.executeQuery(sql);//创建数据对象

SQL:

SELECT sum(Population) FROM `city` WHERE District= 'New Jersey'

然后使用rs.getString将数据打印出来:

            if(rs.next());System.out.println(rs.getString(1));

实践中遇到的问题

运行时抛出:java.sql.SQLException: Before start of result set错误

这个错误的原因是因为ResultSet对象代表SQL语句执行的结果集,维护指向其当前数据行的光标。每调用一次next()方法,光标向下移动一行。最初它位于第一行之前,因此第一次调用next()应把光标置于第一行上,使它成为当前行。随着每次调用next()将导致光标向下移动一行。在ResultSe对象及其t父辈Statement对象关闭之前,光标一直保持有效。所以使用rs.getString();前一定要加上rs.next();
参考资料
在加上if(rs.next());之后,就没问题了。

实践代码

/*** Created by mac on 2017/6/7.*/
import static java.lang.System.out;
import java.sql.*;public class Connection02 {public static void main(String[] args)throws ClassNotFoundException, SQLException {Class.forName("com.mysql.jdbc.Driver");String jdbcUrl = "jdbc:mysql://localhost:3306/world";String user = "root";String passwd = "";try (Connection conn =DriverManager.getConnection(jdbcUrl, user, passwd)) {out.printf("已%s数据库连接%n", conn.isClosed() ? "关闭" : "打开");Statement stmt = conn.createStatement(); //创建Statement对象String sql = "SELECT sum(Population) FROM `city` WHERE District= 'New Jersey'";    //要执行的SQLResultSet rs = stmt.executeQuery(sql);//创建数据对象//System.out.println("ID" + "\t"+"\t" + "Name" +"\t"+ "\t" + "CountryCode"+ "\t"+"\t" + "Distridt" + "\t"+"\t" + "Population");//int count = 0;/*while (rs.next()) {System.out.print(rs.getInt(1) + "\t"+"\t");System.out.print(rs.getString(2) + "\t"+"\t");System.out.print(rs.getString(3) + "\t"+"\t");System.out.print(rs.getString(4) + "\t"+"\t");System.out.print(rs.getString(5) + "\t"+"\t");System.out.println();count++;}*/if(rs.next());System.out.println(rs.getString(1));//System.out.printf("There are all %d answers",count);rs.close();stmt.close();conn.close();} catch (SQLException e) {e.printStackTrace();}}
}

Connection02.java

转载于:https://www.cnblogs.com/blackay03/p/6955858.html

20155322 《Java程序设计》课堂实践项目 数据库-3-4相关推荐

  1. java程序设计教程与项目_Java程序设计教程与项目实训

    书名:Java程序设计教程与项目实训 作者:温秀梅.司亚超 出版社:清华大学出版社 出版日期:2017/8/1 字数: 页数: 版次: ISBN:9787#302473701 定价:49.5 目录 章 ...

  2. java程序设计与实践教程 王薇 doc_Java程序设计与实践教程 王薇主编 答案

    Java程序设计与实践教程 王薇 主编 董迎红 副主编 课后习题 答案 第1章 JAVA简介 一.判断题 1.√ 2.√ 3. 4. 5. 6.√ 7.√ 8.√ 9. 10. 二.填空题 1.App ...

  3. java程序设计及实践实践代码_杭+新闻:姚争为老师把程序设计讲“活”了,满是代码的枯燥课程被学生“秒杀”...

    通讯员 陈鑫 杨鹏飞 记者 方秀芬 作为专业选修课,Java程序设计和Web程序设计,这两门满是代码的课程,看似很枯燥,但在杭师大信息科学与工程学院却爆红,每学期都遭"秒杀",以前 ...

  4. Java 后端开发实践 - 项目模板(16 步)

    在我的工作中,我从零开始搭建了不少软件项目,其中包含了基础代码框架和持续集成基础设施等,这些内容在敏捷开发中通常被称为"第0个迭代"要做的事情.但是,当项目运行了一段时间之后再来反 ...

  5. java程序设计实训项目_Java程序设计教程与项目实训

    本书以现代教育理念为指导,在讲授方式上注意结合应用开发实例,注重培养学生理解面向对象程序设计思想,以提高分析问题和解决实际问题的能力.采用由浅入深.理论与实践相结合的教学思路,通过大量的实例阐述Jav ...

  6. 20155307 2016-2017第二次《Java程序设计》课堂实践项目

    一.String类的使用 模拟实现Linux下Sort -t -k 2的功能.参考 Sort的实现. 在java.lang包中有String.split()方法,它可以把字符串分割为好几个小的字符串. ...

  7. C++程序设计-第九周分支结构程序设计上机实践项目

    回到课程主页,链接:C++程序设计课程主页-2012级 本次上机对应的教学内容:第3章   C++程序设计初步中分支程序设计的部分. 练习+上机验证 [练习1]阅读下列程序,在准备期写出程序的运行结果 ...

  8. 【Java】JavaSE实践项目完整版(含代码)

    在开始动手前先进行需求分析和模型设计. 需求分析: 先看看我们所需要的系统功能结构: 这个项目简单来说需要完成用户.开发人员.开发团队和开发项目的增删改查,在完成相应的功能之后还要与用户交互实现即设计 ...

  9. Java IO流实践项目

    一.项目需求 据了解,目前在校大学生80%以上有做兼职的需求,兼职打工已经不仅仅是经济困难的学生赚取生活费用的途径.调查显示,全球经济危机对就业产生冲击,用人单位对人员的社会实践能力要求提高,大学期间 ...

最新文章

  1. linux下echo /dev/ttys* 到字符设备文件,linux之tty pty pts
  2. Java基础——组合关系
  3. Linux系统中网络配置详解
  4. JavaScript入门(part9)--函数
  5. sum服务器如何接显示器,sum服务器监控
  6. 产品经理必读:用户场景分析的四要素
  7. jsp和html的作用域,JSP(二):JSP九大内置对象、四个作用域对象
  8. 28个数控编程代码大全,众多程序员呕心沥血的私货
  9. 史上最全人工智能英文原版PDF教材1.03G资源包Artificial Intelligence
  10. 微信聊天记录数据分析
  11. 360视频简介及ERP投影
  12. 裂变海报设计的落地干货,为什么海报在裂变活动中这么重要?
  13. python pip安装第三方库出现error: option --single-version-externally-managed not recognized
  14. Android一点 仿淘宝购物车动画
  15. Qt项目-------掌上银行(客户端)
  16. 照片模糊怎么变清晰?
  17. 量化噪声的大小与什么成正比_什么叫 量化噪声?什么叫 量化白噪声?
  18. Jepsen:分布式系统最早的混沌框架
  19. 为什么戏说php,戏说PHP——1.1切的开始
  20. 威客生存手册——从新手到职业威客的蜕变

热门文章

  1. python threading.Semaphore
  2. docker 开启服务
  3. 编程语言对比 面向对象
  4. R语言聚类算法之密度聚类(Density-based Methods)
  5. Java字符串处理之返回指定字符串下标(indexOf)
  6. vSAN其实很简单-vSAN盘他之重新部署vCenter
  7. Java基础学习总结(152)——JDK 1.7和 JDK 1.8中HashMap的实现有什么不同?
  8. codesmith 模板 html5,js-template-art【二】语法(示例代码)
  9. 阿里云服务器ECS选型
  10. 机器学习-ID3决策树算法(附matlab/octave代码)