• JDBC基本操作


    准备工作,下载驱动包,https://dev.mysql.com/downloads/connector/j/

    发现没有windows的,可以选择倒数第二个,Platform Independent独立平台

    数据库跟驱动包版本最好一致

    jdbc六部曲:

    1.导包(IDEA开发工具-File-Project Structure-Libraries-添加+ 驱动jar) 工程里导包实际是个路径,通过路径去找包,理论上可以放在硬盘的任何位置,但为了方便,且不容易丢失,最好跟项目放在一起,

    创建lib专门存放外部jar包(1.复制jar包到lib文件夹 2.放在那里识别不了,要产生关联,还需要添加依赖,按照上述添加到Libraries)

    注意:5.X版本与8.X版本稍有不同,假如报错了有原因

     2.加载驱动

    有几种方式,本质相同

    Class.forName("com.mysql.cj.jdbc.Driver");//通过反射加载

    DriverManager.registerDriver(new Driver());//这个Driver是com.mysql.cj.jdbc.Driver  并非java.sql.Dirver

    new Driver();//跟上面这个本质相同,new之前要先加载静态块,其实就调了registerDriver,用上面那个反而多registerDriver了一次

    3.获取连接、

    String url="jdbc:mysql://localhost:3306/test";//8.x后的版本后边还有。。String url="jdbc:mysql://localhost:3306/test?serverTimezone=CST";
    String user="uuu";
    String password="123456";
    Connection conn=DriverManager.getConnection(url,user,password);
    4.创建Statement,它拥有excute等执行sql的方法
    5.执行sql
    int count=statement.excuteUpdate(sql);//返回受影响的行数,新增,修改,删除
    ResultSet rs=statement.excuteQuery(sql);//查询,返回一个类似于Set的结果集 Set<Map<String,Object>>
    rs.next();//是否还有下一行记录
    rs.getXXX();//获取列的值,getString比较特殊可以获取任何类型的列,它底层或自动转换为String,但其它的getXXX方法必须跟表的列类型对应。
    6.关闭
    倒着关闭,先关rs.close statement.close conn.close

    范例:

    package com;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    import java.sql.Statement;
    
    public class Main {
        public static void main(String[] args) throws ClassNotFoundException, SQLException {
            //1.导包
            //2.加载驱动
            Class.forName("com.mysql.cj.jdbc.Driver");//加载驱动类,类中的静态元素执行
            //3.获取连接
            String url="jdbc:mysql://localhost:3306/test";
            String user="userNam";//mysql登录用户名
            String password="123456";//登录密码
            Connection conn=DriverManager.getConnection(url,user,password);//类似一个socket,通过地址,用户,密码建立连接
            //4.创建状态参数,类似获取流
            Statement statement=conn.createStatement();
            //5.执行sql
            statement.execute("insert into newtest values(4,"sf",now());");
            //6.关闭 先打开的后关
            statement.close();
            conn.close();
            System.out.print("success");
    
    
    
        }
    }
  • 相关阅读:
    美国商务签证面试经历
    正则表达式匹配字符串中的数值部分并将其返回
    在WPF中使用水晶报表for vs2010的方法
    Wpf中用代码执行控件的单击事件
    WPF项目中使用水晶报表for vs2010时的一个找不到程序集的问题
    WinForm实现全屏方法
    wpf中将数据导出为Excel
    WinForm实现窗体上控件的自由拖动
    在WPF中使用WinForm控件方法
    多样、互动的WinForm UI设计与开发思路(Flash、Html等)
  • 原文地址:https://www.cnblogs.com/hebiao/p/14472274.html
Copyright © 2020-2023  润新知