----------------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. Nginx启动与停止

    参考:https://www.phusionpassenger.com/library/install/nginx/install/oss/rubygems_rvm/ Starting Nginx Y ...

  2. MVC中不能使用ViewBag

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

  3. spring-boot2

    1.Spring Boot 1.1.什么是Spring Boot Java是静态语言,先变异后运行都是静态语言,不编译直接运行是动态语言(js是动态语言不需要编译,因为浏览器可以直接解析).Java笨 ...

  4. 【Flask】下载多个文件

    使用zipfile模块可以将多个文件打包成zip文件进行下载,但是常规的操作方式会在服务器磁盘上生成一个zip文件占用磁盘空间. 后引入BytesIO将文件写入到内存中然后下载: def dl_pla ...

  5. keep-alive使用笔记

    vue2.0提供了keep-alive组件,用来缓存组件,避免多次加载,减少性能消耗. 1.将整个网页缓存起来 <router-view class="view" keep- ...

  6. zookeeper 配置文件注释

    tickTime=2000 initLimit=5 syncLimit=2 dataDir=/opt/shencl/zookeeper/data/data0 dataLogDir=/opt/shenc ...

  7. Unity3D连接WCF

    Unity3D连接WCF: 一.最简单的案例 1.VS2015中: (1)建立WCF应用服务程序ForUnity: (2)将自动生成的IService1.cs与Service1.svc删除:   (3 ...

  8. java后端书单

    Java开发工程师一般负责后端开发,当然也有专门做Java Web的工程师,但是随着前后端的分离,越来越多的Java工程师需要往大后端方向发展. 今天我们就来介绍一下Java后端开发者的书单. 首先要 ...

  9. Idea_学习_01_Idea激活

    一.激活—激活码 下载地址:官网 1.注册码 http://idea.lanyus.com/ 二.激活—license server 1. (推荐) 弹窗中选择最后一个页面license server ...

  10. type为number的input标签输入小数的方法

    纠结了一段时间都没找出方法,最后灵光一现想出这个方法,没想到测试下果然成功了! 看目前网上几乎很难找到相对应的解决方法,所以这里分享出来,如果有更佳方法欢迎提出. 方法如下: <input ty ...