----------------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
void main(String[] args) {

 
 

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字符串
是MySQL的jdbc驱动程序

*/

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编程之数据查询的更多相关文章

  1. JDBC编程之数据准备

    --------------------siwuxie095 JDBC 编程之数据准备 启动 MySQL 服务,在管理员模式下的 CMD 窗口中输入 net start mysqldb 「对应的关闭 ...

  2. JDBC编程 之 增删改查

    JDBC编程之数据增加,更改,查询,删除 package com.good.jdbc; import java.sql.Connection; import java.sql.DriverManage ...

  3. JDBC编程之程序优化

    -----------------siwuxie095 首先下载 MySQL 的 JDBC 驱动,下载链接: https://dev.mysql.com/downloads/connector/j/ ...

  4. JDBC编程之数据更新

    -------------------siwuxie095                             JDBC 编程之数据更新             首先下载 MySQL 的 JDBC ...

  5. Java8学习之旅2---基于Lambda的JDBC编程

    Java8的Lambda表达式确实是一个很好的特性.可是在哪些场合下使用.事实上还是须要细致考虑的.我们当然不能为了使用而使用,而是须要找到切实实用的场合.在JDBC编程中,比如查询语句,首先须要进行 ...

  6. JDBC在javaweb中的应用之分页数据查询

    分页查询 分页查询是java web开发中经常使用到的技术.在数据库中数据量非常大的情况下,不适合将所有的数据全部显示到一个页面中,同时为了节约程序以及数据库的资源,就需要对数据进行分页查询操作. 通 ...

  7. 使用JDBC从数据库中查询数据的方法

    * ResultSet 结果集:封装了使用JDBC 进行查询的结果 * 1. 调用Statement 对象的 executeQuery(sql) 方法可以得到结果集 * 2. ResultSet 返回 ...

  8. 单独使用jdbc编程问题总结(一)

    在学习Mybatis之前,我们先来回顾JDBC编程的相关知识.在此基础上深入的学习Mybatis框架.如有错误,敬请指正. (一)首先我们既然要使用jdbc,当然是要操作数据库了.创建一个名为:myb ...

  9. 浅谈JDBC编程

    一.概述 1.为什么要用JDBC 数据库是程序不可或缺的一部分,每一个网站和服务器的建设都需要数据库.对于大多数应用程序员(此处不包含数据库开发人员)来说,我们更多的不是在DBMS中对数据库进行操纵, ...

随机推荐

  1. php类和对象(一)

    对象:任何东西都可以称为对象,类实例化出来的东西类:对所有同类的对象抽象出来的东西 Info: Code,Name,Sex,Nation,Birthday对象:一条具体的信息 p001 张三 男 汉族 ...

  2. MVC中不能使用ViewBag

    在工程文件中添加 <Reference Include="Microsoft.CSharp" /> <Reference Include="System ...

  3. Python OOP(3) staticmethod和classmethod统计实例

    staticmethod 统计实例 #!python2 #-*- coding:utf-8 -*- class c1: amount_instance=0 def __init__(self): c1 ...

  4. 《Java并发编程的艺术》留给自己以后看的笔记

    <Java并发编程的艺术>这本书特别好,和<深入了解JAVA虚拟机>有一拼,建议做java的都看看,下面全部都是复制书中的部分内容,主要目的是做个笔记,方便以后遇到问题能找到. ...

  5. ubuntu下android studio生成的unaligned apk的zipalign处理

    在ubuntu系统中使用android studio生成的apk文件始终都是unaligned apk, 在bulid.gradle中设置如下设置后,还是同样生成的是unaligned apk. mi ...

  6. 从mysqldump整库备份文件中恢复单表

    最近,系统更新出现了问题,比较紧急,需要对三张表进行回档.由于我们都是采用mysqldump进行每天全备整库,数据量比较大,一个备份文件大概有70G,需要从这个70G文件中恢复三张表,真是蛋疼至极啊, ...

  7. EntityFramework 学习 一 DbContext

    上一节中EDM自动生成SchoolEntities类,该类继承DbContext EntityFramework4.1之前的版本,EDM生成的类继承ObjectContext,使用ObjectCont ...

  8. Openldap- 大机群身份验证服务

    无论在哪个行业,数据安全永远都是摆在首要地位.尤其是在大数据行业上,谁掌握了数据,谁就有可能成为下个亿万富豪的环境中,数据安全更为重要.大数据的安全可以从哪些地方入手,首先可以在身份验证上面入手.在大 ...

  9. JavaScript 的 async/await

    随着 Node 7 的发布,越来越多的人开始研究据说是异步编程终级解决方案的 async/await. 异步编程的最高境界,就是根本不用关心它是不是异步. async 函数就是隧道尽头的亮光,很多人认 ...

  10. beans.factory.BeanCreationException beans.factory.annotation.Autowired(required=true)

    主要是这三个方面排查: 1,注入写成这样 @Autowired   private BrandServiceImpl      brandServiceImpl; 2,jar冲突,在pom.xml中 ...