Eclipse使用JDBC小案例

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

第1部分 JDBC工作过程:

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

2) 创建语句对象;

3) 执行SQL语句;

4) 处理结果集;

5) 关闭连接;

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

1) 导入JDBC驱动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 创建一个表

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();
        }
    }

}

原文地址:https://www.cnblogs.com/kwinwei/p/10659375.html

时间: 2024-07-29 07:14:28

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

spring boot入门小案例

spring boot 入门小案例搭建 (1) 在Eclipse中新建一个maven project项目,目录结构如下所示: cn.com.rxyb中存放spring boot的启动类,application.properties中放spring boot相关配置 (2) 在pom.xml中加入spring boot 依赖包 (3)在cn.com.rxyb中新建启动类APP 1 package cn.com.rxyb; 2 import org.springframework.boot.Spri

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

Cookie小案例------记住浏览过的商品记录 我们知道,这个功能在电商项目中很常见.这里处理请求和页面显示都是由servlet实现,主要是为了体现cookie的作用, 实现功能如下: 1,点击购买的商品后,显示到另一页面 2,记住用户浏览过的商品,并在页面时中显示 3,当浏览过的数量超过最大值限度时,最下面一个商品被挤下去 4,当浏览过的商品本身就在浏览记录中,显示列表将其从中间移到最上面 显示一打开网站的样子和显示用户的浏览记录: package cn.itcast.cookie; im

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

Session小案例-----简单购物车的使用 同上篇一样,这里的处理请求和页面显示同样用的都是servlet. 功能实现如下: 1,显示网站的所有商品 2,用户点击购买后,能够记住用户选择的商品 3,实现了多个会话共享一个session 4, 实现了浏览器禁用cookie后数据共享问题的处理 首页: package cn.itcast.shopping; import java.io.IOException; import java.io.PrintWriter; import java.io

sqoop操作之ETL小案例

Extraction-Transformation-Loading的缩写,中文名称为数据提取.转换和加载.将数据从ORACLE中抽取数据,经过hive进行分析转换,最后存放到ORACLE中去. 本案例是纯demo级别,练手使用 一.需求将emp和dept表的数据分析最后存放到result表. emp和dept表均为oracle自带的表,表结构如下: emp表 EMPNO NUMBER(4) ENAME VARCHAR2(10) JOB VARCHAR2(9) MGR NUMBER(4) HIRE

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

为了练手,我就自己试着做了一个网站的登录与注册的小案例.由于没有做美化处理,所以界面并不是很好看. 网站实现的功能如下: 用户首次注册功能 用户登录功能 项目目录展示: 下面我将会分模块展示 注册模块 首先需要一个注册界面,如下register.jsp: <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <

Windows Server之浅谈SMB以及SMB小案例分享

SMB由来 服务器消息区块(英语:Server Message Block,缩写为SMB,服务器消息区块),又称网络文件共享系统(英语:Common Internet File System,缩写为CIFS),一种应用层网络传输协议,由微软开发,主要功能是使网络上的机器能够计算机文件.打印机.串行端口和通讯等资源.它也提供经认证的进程间通信机能.它主要用在装有Microsoft Windows的机器上,在这样的机器上被称为Microsoft Windows Network. SMB版本 OS W

Thinkphp 生成订单号小案例

Thinkphp 生成订单号小案例小伙伴们在日常的商城项目开发中,都会遇到订单号生成的问题,今天呢思梦PHP就带领大家去解读一下生成订单号的问题!首先,订单号我们要明确它有有3个性质:1.唯一性 2.不可推测性 3.效率性,唯一性和不可推测性不用说了,效率性是指不能频繁的去数据库查询以避免重复.况且满足这些条件的同时订单号还要足够的短.不知道小伙伴们在日常的项目中是否也和我一样去思考过生成订单的一些小问题,可能你也会说,这些东西不用想的那么复杂,其实呢,小编也是同意大家的看法,但是殊不知我们做程

几个数据库的小案例(一):将文本文件中的信息导入数据库的表中

从文本文件添加到数据库用户表的记录(有两个文件:frmMain.cs  SqlHelper.cs  ) //FrmMain.cs//作者:Meusing System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Fo

Java小案例(行星移动)

Java小案例 行星移动:参考:三百集 使用软件:idea2017,java 1,图片集:这里  (idea图片源放在target目录下,才能访问到),建议从小往上看... 2,定义MyFrame package my.university; import java.awt.*; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; public class MyFrame extends Frame {