1、概述

  (1)通过预处理对象的executeQuery方法,完成记录的select语句的执行;

  (2)操作格式统一如下:

    ①注册驱动;

    ②获取连接;

    ③获取预处理对象;

    ④SQL语句占位符设置实际参数;

    ⑤执行SQL语句;

    ⑥处理结果集(遍历结果集合);

    ⑦释放资源。

  (3)查询记录:select

    ①实现查询分类表所有记录

 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet; public class Demo04 {
public static void main(String[] args) throws Exception {
// 1注册驱动
Class.forName("com.mysql.jdbc.Driver");
// 2获取连接
Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/mybase", "root", "root");
// 3获得预处理对象
String sql = "select * from sort";
PreparedStatement stat = conn.prepareStatement(sql);
// 4 SQL语句占位符设置实际参数
// 5执行SQL语句
ResultSet rs = stat.executeQuery();
// 6处理结果集(遍历结果集合)
while (rs.next()) {
// 获取当前行的分类ID
String sid = rs.getString("sid");// 方法参数为数据库表中的列名
// 获取当前行的分类名称
String sname = rs.getString("sname");
// 显示数据
System.out.println(sid + "-----" + sname);
}
// 7释放资源
rs.close();
stat.close();
conn.close(); }
}

  运行结果:

  

    ②实现查询分类表中指定分类名称的记录

 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet; public class Demo05 {
public static void main(String[] args) throws Exception {
// 1注册驱动
Class.forName("com.mysql.jdbc.Driver");
// 2获取连接
Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/mybase", "root", "root");
// 3获得预处理对象
String sql = "select * from sort where sname=?";
PreparedStatement stat = conn.prepareStatement(sql);
// 4 SQL语句占位符设置实际参数
stat.setString(1, "空调");
// 5执行SQL语句
ResultSet rs = stat.executeQuery();
// 6处理结果集(遍历结果集合)
while (rs.next()) {
// 获取当前行的分类ID
String sid = rs.getString("sid");// 方法参数为数据库表中的列名
// 获取当前行的分类名称
String sname = rs.getString("sname");
// 显示数据
System.out.println(sid + "-----" + sname);
}
// 7释放资源
rs.close();
stat.close();
conn.close(); }
}

  运行结果:

  

03012_预处理对象executeQuery方法(实现数据库的查询)的更多相关文章

  1. 03011_预处理对象executeUpdate方法(实现数据库的增、删、改)

    1.概述 (1)通过预处理对象的executeUpdate方法,完成记录的insert\update\delete语句的执行: (2)操作格式统一如下: ①注册驱动: ②获取连接: ③获取预处理对象: ...

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

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

  3. hibernate的session对象核心方法注意的问题

    1.session.save()方法 1).session.save()方法会使一个对象从临时状态转变为持久化状态. 2).session.save()方法会赋予持久化对象的OID属性一个ID值,以对 ...

  4. .NET 利用反射将对象数据添加到数据库

    .NET 利用反射将对象数据添加到数据库   一些小型的项目,在不使用其他的框架(LINQ,NHibernate,EF等等框架)的前提下,这时候一些反复的增删改查就会让我们感到极其的繁琐,厌烦,为了避 ...

  5. 纯静态界面中(html)中通过js调用dll中的方法从数据库中读取数据

    最近接到一个离职员工的任务,一个搭好框架的ERP系统,看了两天,说一下看到的东西,整个项目目录中我没发现一个.aspx后缀的文件,全是静态HTML文件,之后发现他用的jquery简直看的头疼,不过大概 ...

  6. Connection 对象简介 方法解读 JDBC简介(四)

    通过驱动管理器DriverManager的getConnection方法,可以创建到指定URL的连接     Connection conn = DriverManager.getConnection ...

  7. 在hibernate中查询单个对象的方法,get()、load()、

    查询单个对象可以直接通过Session对象来做到,其中session这个对象提过了2种获得单个对象的方法,一个是get方法和load方法,我去看这个两个方法的时候发现这两个方法的参数是一样的,使用方式 ...

  8. VS中添加预处理宏的方法

    VS中添加预处理宏的方法 除了在.c及.h中添加宏定义之外,还可以采用如下方法添加宏定义: 1.若只需要定义一个宏(如#define DEBUG),可以右键点击工程-->属性-->c/c+ ...

  9. Hibernate区分不同对象的方法

    1.关系数据库按主键区分不同记录. create table CUSTOMERS (ID int promary key not null, NAME varchar(15));     insert ...

随机推荐

  1. gem5中event queue执行原理机制具体分析

    搞清楚这个花了两天时间,下面内容为简略版.为了给自己赚点下载用的积分.如须要具体版本号.请点击下载点击打开链接 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQ ...

  2. Tuples as return values

    Strictly speaking, a function can only return one value, but if the value is a tuple, the effect is ...

  3. Android框架-Volley(四)

    经过前三篇文章的学习,Volley的用法我们已经掌握的差不多了,但是对于Volley的工作原理,恐怕有很多朋友还不是很清楚.因此,本篇文章中我们就来一起阅读一下Volley的源码,将它的工作流程整体地 ...

  4. <Sicily>Prime Palindromes

    一.题目描述 The number 151 is a prime palindrome because it is both a prime number and a palindrome (it i ...

  5. dedecms4张关键表解析之1

    虽然dedecms默认共有87张表,但是只有4张最核心,最最要的表. 1.第一张表:dede_arctype  栏目表 dede设计者认为不管存放什么样的数据(文章,商品,电影)都应该属于某个栏目(类 ...

  6. ACM-ICPC 2016 Qingdao Preliminary Contest

    A I Count Two Three I will show you the most popular board game in the Shanghai Ingress Resistance T ...

  7. LLDB使用篇(上)

    LLDB是个开源的内置于XCode的具有REPL(read-eval-print-loop)特征的Debugger,其可以安装C++或者Python插件. 本系列针对于已经知道何为debugger,且 ...

  8. caffe(4) 激活层(Activation Layers)及参数

    在激活层中,对输入数据进行激活操作(实际上就是一种函数变换),是逐元素进行运算的.从bottom得到一个blob数据输入,运算后,从top输入一个blob数据.在运算过程中,没有改变数据的大小,即输入 ...

  9. NodeJS学习笔记 进阶 (8)express+morgan实现日志记录(ok)

    个人总结:这篇文章讲解了Express框架中日志记录插件morgan的示例.读完这篇文章需要10分钟 摘选自网络 章节概览 morgan是express默认的日志中间件,也可以脱离express,作为 ...

  10. idea+spring4+springmvc+mybatis+maven实现简单增删改查CRUD

    在学习spring4+springmvc+mybatis的ssm框架,idea整合简单实现增删改查功能,在这里记录一下. 原文在这里:https://my.oschina.net/finchxu/bl ...