JDBC(Java Database Connectivity:Java访问数据库的解决方案)定义一套标准接口,即访问数据库的通用API,不同数据库厂商根据各自数据的特点去实现这些接口。

  JDBC是Java应用程序和数据库之间的通信桥梁,是Java应用程序访问数据库的通道。

  1.JDBC标准主要有一株接口组成,其好处是统一了各种数据库的访问方式;

  2.JDBC接口的实现类称为数据库驱动,由数据库厂商提供,使用JDBC必须要导入接口;

  

第1部分 JDBC工作过程:

1)加载驱动,建立连接;

2) 创建语句对象;

3) 执行SQL语句;

4) 处理结果集;

5) 关闭连接;

第2部分 JDBC具体使用步骤:

1) 导入JDBC驱动jar;

  使用Maven可以便于导入jar包和移植

2) 注册JDBC驱动;

参数:“驱动程序类名”

Class.forName(“驱动程序类名”);

3) 获得Connection对象

需要三个参数:URL,username,password

连接数据库

4) 创建Statement(语句)对象

conn.createStatement()方法创建对象

用于执行SQL语句

execute(ddl) 执行任何语句,常用语执行DDL

executeUpdate(DML) 执行DML语句 ,如insert,update,delete

executeQuery(DQL) 执行DQL语句,如select

5) 处理SQL执行结果:

execute(DDL) 如果没有异常则成功;

executeUpdate(DML) 返回数字,表示更新“行”数量,抛出异常则失败;

executeQuery(DQL) 返回ResultSet(结果集)对象,代表2维查询结果;

使用for遍历处理,如果查询失败抛出异常!

6) 关闭数据连接,最后一定要关闭!

conn.close();

第3部分 小案例

3.1 创建一个表

  注意:用String写SQL语句时换行时要注意加空格!

package kwin.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
/**
* jdbd使用
* @author KwinWei QQ:885251358
*
*/
public class JdbcDemo { public static void main(String[] args) {
try {
/*连接到数据库
*/
Class.forName("oracle.jdbc.OracleDriver");
//System.out.println("OK!");
/*不同的oracle的IP地址不同
* 主机名,端口号,SID
* url,username,password
*
* jdbc:oracle:thin 写错会找不到驱动
* 后半写错 连接不上数据库
*
* sqldeverment 连接右键可查看
* */
String url = "jdbc:oracle:thin:@localhost:1521:xe";
String username = "system"; //用户名密码错误会拒绝连接
String password = "root"; //getConnection() 查找并尝试连接到数据库,如果不成功则会出现异常
Connection conn = DriverManager.getConnection(url,username,password);
//输出conn引用对象的实际类名
//证明:驱动程序提供了Connection接口的实现类
System.out.println(conn.getClass()); /*创建“语句”对象,执行SQL
* Statement接口
* Statement stmt = conn.createStatement();
* boolean flag = stmt.execute(sql); 什么语句都可以执行,一般执行DDL语句,;
* ResultSet rs = stmt.execute.Query(sql);执行dql语句,selecte,产生结果集;
* int flag = stmt.executeUpdate(sql);执行DML语句,delete,update
*
* 这三方法不要乱用,其实互换使用可以,但不建议;按建议使用方式来;
* */
Statement st = conn.createStatement();
String ddl1 = "CREATE TABLE kwinDemo( " +
" id NUMBER(4) ," +
" name VARCHAR2(40)," +
" gender VARCHAR2(1)" +
")";
boolean b = st.execute(ddl1);
//返回结果:true表示有结果集;false没有结果集;创建失败抛异常;
System.out.println(b); conn.close(); //最后一定要关闭连接 }catch(Exception e) {
e.printStackTrace();
} } }

3.2 执行DML语句,往表里插入数据

package kwin.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement; /**
* 执行DML语句
* @author KwinWei QQ:885251358
*
*/
public class JdbcDemo2 { public static void main(String[] args) {
try{/*注册驱动*/
Class.forName("oracle.jdbc.OracleDriver");
//连接到数据库
String url = "jdbc:oracle:thin:@localhost:1521:xe";
String username = "system";
String password = "root";
Connection conn = DriverManager.getConnection(url,username,password);
//System.out.println(conn.getClass()); //创建Statement
Statement st = conn.createStatement();
//执行DML,插入可以去SQL Dvelopment里查看
String dml = "insert into kwinDemo"
+ "(id,name) values(001,'Tom')";
int n = st.executeUpdate(dml);
System.out.println(n);
//关闭连接
conn.close(); }catch(Exception e) {
e.printStackTrace();
}
} }

Eclipse使用JDBC小案例的更多相关文章

  1. MVC 小案例 -- 信息管理

    前几次更新博客都是每次周日晚上到周一,这次是周一晚上开始写,肯定也是有原因的!那就是我的 Tomact 忽然报错,无法启动,错误信息如下!同时我的 win10 也崩了,重启之后连 WIFI 的标志也不 ...

  2. spring boot入门小案例

    spring boot 入门小案例搭建 (1) 在Eclipse中新建一个maven project项目,目录结构如下所示: cn.com.rxyb中存放spring boot的启动类,applica ...

  3. JSP +MySQL实现网站的登录与注册小案例

    为了练手,我就自己试着做了一个网站的登录与注册的小案例.由于没有做美化处理,所以界面并不是很好看. 网站实现的功能如下: 用户首次注册功能 用户登录功能 项目目录展示: 下面我将会分模块展示 注册模块 ...

  4. Cookie小案例-----记住浏览过的商品记录

    Cookie小案例------记住浏览过的商品记录 我们知道,这个功能在电商项目中非经常见.这里处理请求和页面显示都是由servlet实现,主要是为了体现cookie的作用, 实现功能例如以下: 1, ...

  5. Session小案例-----简单购物车的使用

    Session小案例-----简单购物车的使用 同上篇一样,这里的处理请求和页面显示相同用的都是servlet. 功能实现例如以下: 1,显示站点的全部商品 2.用户点击购买后,可以记住用户选择的商品 ...

  6. 黑马day14 踢人小案例

    本案例介绍: 使用监听器来实现踢人小案例,仅仅有管理员才有踢人的功能. 1.搭建开发环境,导入本案例须要的jar包.以及一个准备好的数据库工具类:提供数据源的方法...当中我已经在数据库中加入了三个用 ...

  7. Hibernate的介绍及入门小案例

    1.Hibernate的诞生 在以前使用传统的JDBC开发应用系统时,如果是小型应用系统,并不觉得有什么麻烦,但是对于大型应用系统的开发,使用JDBC就会显得力不从心,例如对几十,几百张包含几十个字段 ...

  8. 机械表小案例之transform的应用

    这个小案例主要是对transform的应用. 时钟的3个表针分别是3个png图片,通过setInterval来让图片转动.时,分,秒的转动角度分别是30,6,6度. 首先,通过new Date函数获取 ...

  9. shell讲解-小案例

    shell讲解-小案例 一.文件拷贝输出检查 下面测试文件拷贝是否正常,如果cp命令并没有拷贝文件myfile到myfile.bak,则打印错误信息.注意错误信息中basename $0打印脚本名.如 ...

随机推荐

  1. Centos7上搭建redis主从

    1. 节点(服务器)数量说明 按照redis官方建议:salve和master的数量按照2n+1台服务器(1台master节点,2n台slave节点) 有兴趣的可以了解下redis的master选举机 ...

  2. C# -- 使用FileInfo获取文件信息

    C# -- 使用FileInfo获取文件信息 1. 代码实现 static void Main(string[] args) { GetFileInfo(@"D:\Test.xlsx&quo ...

  3. Linux学习之路(三)Shell脚本初探

    本文参考链接:http://www.runoob.com/linux/linux-shell.html 基本说明 Shell脚本(shell script)是一种为shell编写的脚本程序.其中she ...

  4. express+sequelize 做后台

    第一部分:安装express 第一步:执行 npm install -g express-generator note:必须安装这个,不然创建express项目的时候会提示express命令没有找到 ...

  5. android等待对话框

    等待对话框,这里有两种方式来实现: ProgressDialog方式 progressDialog初始化 private void initProgressDialog() { progressDia ...

  6. 宝塔服务器面板 部署 thinkphp5 坑

    thinkphp5 在宝塔服务器上部署,出现的问题: 1. File not found. 原因: 宝塔服务器默认不支持 pathinfo 的路径访问:需要在软件 - PHP - 管理里面,安装php ...

  7. Ubuntu下搭建spark2.4环境(单机版)

    说明:单机版的Spark的机器上只需要安装JDK即可,其他诸如Hadoop.Zookeeper(甚至是scala)之类的东西可以一概不安装.集群版搭建:Spark2.2集群部署和配置 一.安装JDK1 ...

  8. Cookies, Claims and Authentication in ASP.NET Core(转载)

    Most of the literature concerning the theme of authentication in ASP.NET Core focuses on the use of ...

  9. 使用RAP2和Mock.JS实现Web API接口的数据模拟和测试

    最近一直在思考如何对Web API的其接口数据进行独立开发的问题,随着Web API的越来越广泛应用,很多开发也要求前端后端分离,例如统一的Web API接口后,Winform团队.Web前端团队.微 ...

  10. FineUIPro/Mvc/Core v5.4.0即将发布(Core基础版,新功能列表)!

    FineUIPro/Mvc/Core v5.4.0 即将于 2019-03-04 发布,目前官网示例已更新,先睹为快:http://pro.fineui.com/http://mvc.fineui.c ...