JDBC编程之数据查询
----------------siwuxie095
JDBC 编程之数据查询
首先下载 MySQL 的 JDBC 驱动,下载链接:
https://dev.mysql.com/downloads/connector/j/

mysql-connector-java-5.1.41.zip
解压后一览:

工程名:JDBCTest
包名:com.siwuxie095.jdbc
类名:JDBCTest.java
打开资源管理器,在工程 JDBCTest 文件夹下,创建一个文件夹:lib,
在其中放入:mysql-connector-java-5.1.41-bin.jar
工程结构目录如下:

选择
mysql-connector-java-5.1.41-bin.jar,右键->Build Path->Add to Build Path
此时,工程结构目录一览:

代码:
|
package com.siwuxie095.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; /** * 下面的方法实际上将数据库信息硬编码到java代码中,不可取 * * @author siwux * */ public class JDBCTest { /** * jdbc编程流程: * 加载驱动 * 打开连接 * 执行查询 * 处理结果 * 清理环境 */ public static String sql="select * from stu_password";// sql查询语句 Connection conn=null;// 当前数据库连接 Statement st=null;// 向数据库发送sql语句
ResultSet rs=null;// 结果集,封装了从数据库中查询到的数据 try { /** * 注册MySQL的jdbc驱动程序 * * Class类继承自Object,它封装的是被装载到JVM中的类的信息, * 如:类的成员变量、成员方法、类实现的接口、继承自谁等 * * forName方法用来初始化参数指定的类,并创建一个对应的实例对象 * * com.mysql.jdbc.Driver字符串 */ Class.forName("com.mysql.jdbc.Driver");
/** * 获取MySQL的数据库连接,需传入三个参数 * 分别是 MySQL数据库的URL,MySQL数据库的用户名,MySQL数据库的密码 * * */ conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/sims_db","root","8888");
st=conn.createStatement();//创建一个Statement对象
rs=st.executeQuery(sql);//发送sql语句,返回一个Resultset对象 //对Resultset对象进行遍历 while(rs.next()) { System.out.print(rs.getString("stu_id")+" "); System.out.print(rs.getString("stu_pwd")+" "); System.out.println(); } } catch (Exception e) { e.printStackTrace(); System.err.println("数据库加载失败..."); }finally {
//资源清理工作 try { rs.close();//关闭Resultset结果集 } catch (Exception e2) { e2.printStackTrace(); } try { st.close();//关闭Statement对象 } catch (Exception e2) { e2.printStackTrace(); } try { conn.close();//关闭数据库连接 } catch (Exception e2) { e2.printStackTrace(); } } } } |
运行一览:

注意:高版本的
JDBC 驱动需要指明是否进行 SSL 连接

即
加上:?characterEncoding=utf8&useSSL=false
或:

即
加上:?useUnicode=true&characterEncoding=utf-8&useSSL=false
总结 JDBC 编程流程:
(1)加载驱动:加载
JDBC 驱动程序
(2)打开连接:打开一个数据库连接
(3)执行查询:创建一个会话对象,执行增删改查等操作
(4)处理结果:处理查询的结果
(5)清理环境:关闭会话,关闭连接等操作,完成资源的清理工作
关于
数据库的准备,详见本人博客的分类:来一杯Java,
里面的
JDBC编程之数据准备
本人博客(任选其一)链接:
https://www.baidu.com/s?ie=UTF-8&wd=siwuxie095
【made by siwuxie095】
JDBC编程之数据查询的更多相关文章
- JDBC编程之数据准备
--------------------siwuxie095 JDBC 编程之数据准备 启动 MySQL 服务,在管理员模式下的 CMD 窗口中输入 net start mysqldb 「对应的关闭 ...
- JDBC编程 之 增删改查
JDBC编程之数据增加,更改,查询,删除 package com.good.jdbc; import java.sql.Connection; import java.sql.DriverManage ...
- JDBC编程之程序优化
-----------------siwuxie095 首先下载 MySQL 的 JDBC 驱动,下载链接: https://dev.mysql.com/downloads/connector/j/ ...
- JDBC编程之数据更新
-------------------siwuxie095 JDBC 编程之数据更新 首先下载 MySQL 的 JDBC ...
- Java8学习之旅2---基于Lambda的JDBC编程
Java8的Lambda表达式确实是一个很好的特性.可是在哪些场合下使用.事实上还是须要细致考虑的.我们当然不能为了使用而使用,而是须要找到切实实用的场合.在JDBC编程中,比如查询语句,首先须要进行 ...
- JDBC在javaweb中的应用之分页数据查询
分页查询 分页查询是java web开发中经常使用到的技术.在数据库中数据量非常大的情况下,不适合将所有的数据全部显示到一个页面中,同时为了节约程序以及数据库的资源,就需要对数据进行分页查询操作. 通 ...
- 使用JDBC从数据库中查询数据的方法
* ResultSet 结果集:封装了使用JDBC 进行查询的结果 * 1. 调用Statement 对象的 executeQuery(sql) 方法可以得到结果集 * 2. ResultSet 返回 ...
- 单独使用jdbc编程问题总结(一)
在学习Mybatis之前,我们先来回顾JDBC编程的相关知识.在此基础上深入的学习Mybatis框架.如有错误,敬请指正. (一)首先我们既然要使用jdbc,当然是要操作数据库了.创建一个名为:myb ...
- 浅谈JDBC编程
一.概述 1.为什么要用JDBC 数据库是程序不可或缺的一部分,每一个网站和服务器的建设都需要数据库.对于大多数应用程序员(此处不包含数据库开发人员)来说,我们更多的不是在DBMS中对数据库进行操纵, ...
随机推荐
- 每天一个Linux命令(12)more命令
more命令是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作. 该命令一次显示一屏文本,满屏后停下来,并且在屏幕的底部出现一个提示信息,给出至今己显示 ...
- Data Structure Binary Tree: Boundary Traversal of binary tree
http://www.geeksforgeeks.org/boundary-traversal-of-binary-tree/ #include <iostream> #include & ...
- python详细目录
python第一篇 第二篇.初识列表字典元祖循环 第三篇.内置方法 第四篇.编码解码 列表.元祖 第五篇.数据类型 第六篇 函数 第七篇.函数二 第八篇.递归.装饰器 第九篇 正则表达式 第十篇.模块 ...
- 爬虫 spider
python 2.x # -*- coding: utf-8 -*-import reimport urllib url = 'http://tieba.baidu.com/p/4872795764' ...
- etcd -> Highly-avaliable key value store for shared configuration and service discovery
The name "etcd" originated from two ideas, the unix "/etc" folder and "d&qu ...
- ajax如何处理返回的数据格式是xml的情况
<!DOCTYPE html> <html> <head> <title>用户注册</title> <meta charset=&qu ...
- UniDAC 安装教程
翻译: 1.解压后把UniDAC文件夹直接复制到你专门用来存放第三方控件的地方(这一步根据自己的喜好,可以跳过这一步)2.在UniDAC\Source\Delphi21文件夹中找到Make.bat文件 ...
- algorithm之排序算法--待解决
简述:排序算法,参见http://www.cplusplus.com/reference/algorithm/?kw=algorithm 待解决问题:各种排序算法的实现 /* template < ...
- android 网络编程--socket tcp/ip udp http之间的关系
网络七层由下往上分别为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层,一般编程人员接触最多的就是应用层和运输层,再往下的就是所谓的媒体层了,不是我们研究的对象. 下面是应用层.运输层,网络 ...
- Android: 利用SurfaceView绘制股票滑动直线解决延迟问题
1.背景介绍 最近项目要绘制股票走势图,并绘制能够跟随手指滑动的指示线(Indicator)来精确查看股票价格和日期.如下图所示: 上图中的那条白色直线就是股票的指示线,用来跟随手指精确确定股票的时间 ...