• JDBC


    数据库驱动:
    SUN公司为了简化,统一对数据库的操作,定义了一套java操作数据库的规范jar包,通过导入jar包就可以调用其中的
    方法操作数据库,这样子的jar包就叫做数据库驱动
    JDBC:
    sun定义的一套标准,就是一大堆操作数据库的接口,所有数据库厂商为java设计的数据库驱动都实现过这套接口,
    统一了不同数据库驱动的方法。
    Java Data Base Connectivity,主要由接口组成。
    java.sql javax.sql

    1.在数据库里面添加如下数据:

    create database day10;
    use day10;
    create table user(
        id int primary key auto_increment,
        name varchar(40),
        password varchar(40),
        email varchar(60),
        birthday date
    )character set utf8 collate utf8_general_ci;
    
    insert into user(name, password, email, birthday) values('zs','123456','zs@sina.com','1980-12-04');
    insert into user(name, password, email, birthday) values('lisi','123456','lisi@sina.com','1981-12-04');
    insert into user(name, password, email, birthday) values('wangwu','123456','wangwu@sina.com','1979-12-04');

    2.将驱动包导入工程
    在工程下建立lib文件夹,将mysql-connector-java-5.0.8-bin.jar复制进去,然后点Build path,变成奶瓶图样

    3.编码实现

    package com.zy.jdbc;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    
    import com.mysql.jdbc.Driver;
    
    public class JDBCDemo1 {
        public static void main(String[] args) {
            Connection conn = null;
            //3.获取传输器对象,可以看做是一个数据的封装
            Statement state = null;
            //4.利用传输器,传输sql语句到数据库中执行,获取结果集对象
            ResultSet rs = null;
            try {
                //1.注册数据库驱动
                    //由于mysql在Driver类的实现中自己注册了一次,而我们又注册了一次,会导致注册两次
                    //创建mysql的Driver对象时,导致了程序和具体的mysql驱动绑死在一起,在切换数据库时需要改变java代码
                    //DriverManager.registerDriver(new Driver());
                Class.forName("com.mysql.jdbc.Driver");
                //2.获取数据库连接
                String user = "root";
                String password = "root";
                //url = 协议://主机名:端口/数据库名
                String url = "jdbc:mysql://localhost:3306/day10";//告诉程序连接哪一个数据库
                conn = DriverManager.getConnection(url , user, password);
                state = conn.createStatement();
                rs = state.executeQuery("select * from user");
                //5.遍历结果集,获取结果
                while(rs.next()) {
                    String name = rs.getString("name");
                    System.out.println("name:"+name);
                }
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } finally {
                //6.关闭资源,不然影响数据库的最大连接数和内存
                if(rs!=null){
                    try {
                        rs.close();
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }finally{
                        rs = null;
                    }
                }
                if(state!=null){
                    try {
                        state.close();
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }finally{
                        state = null;
                    }
                }
                if(conn!=null){
                    try {
                        conn.close();
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }finally{
                        conn = null;
                    }
                }
            }
        }
    }
  • 相关阅读:
    Netty简单聊天室
    JDK环境变量配置
    EasyUI Tabs
    NIO(五)
    NIO(四)
    银行对公业务和对私业务
    mysql常用操作
    LInux安装MySQL5.7.24详情
    Python3 SMTP发送邮件
    linux下sendmail邮件系统安装详情
  • 原文地址:https://www.cnblogs.com/superPerfect/p/4360253.html
Copyright © 2020-2023  润新知