首页 > 编程语言 >java 连接数据的五种方式

java 连接数据的五种方式

时间:2022-12-01 11:44:25浏览次数:32  
标签:java String url Driver properties 五种 connect mysql 连接

//第一种方式,静态连接
    public static void connect01() throws SQLException {
        //注册驱动
        Driver driver = new Driver(); //创建一个driver对象
        //获取连接
        // jdbc:mysql:// 规定好表示协议,通过jdbc的方式连接
        // localhost:3306表示本机 的 3306 端口号
        // db01 表示需要连接到的数据库
        String url = "jdbc:mysql://localhost:3306/db01";

        Properties properties = new Properties();
        properties.setProperty("user", "root"); //连接到的用户
        properties.setProperty("password", "123456"); //连接的的密码
        Connection connect = driver.connect(url, properties);  //链接到了数据库

        System.out.println("第一种方式拿到了连接:" + connect);
        connect.close();
    }
//方式二:动态记载,减少依赖性
    public static void connect02() throws ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException {
        Class cls = Class.forName("com.mysql.jdbc.Driver");
        Driver driver = (Driver) cls.newInstance();
        String url = "jdbc:mysql://localhost:3306/db01";
        Properties properties = new Properties();
        properties.setProperty("user", "root");
        properties.setProperty("password", "123456");
        Connection connect = driver.connect(url, properties);
        System.out.println("第二种方式拿到了连接:" + connect);
        connect.close();
    }
    //方式4:使用Class.forName自动完成注册驱动,简化代码
    //开发中使用较多
    //Driver当中的静态代码块中完成了驱动的注册
    public static void connect04() throws ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException {
        Class<?> aClass = Class.forName("com.mysql.jdbc.Driver");
        Driver driver = (Driver) aClass.newInstance();
        //上面两句话可以不写
        //在mysql-connector-java-5.1.6-bin.jar 之后,可以自动加载驱动


        String user = "root";
        String password = "123456";
        String url = "jdbc:mysql://localhost:3306/db01";
        Connection connection = DriverManager.getConnection(url, user, password);
        System.out.println("第四种方式拿到了连接:" + connection);

        connection.close();
    }

 

    //第五种方式
    //写入到配置文件,连接数据库更加灵活
    public static void connect05() throws ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException, IOException {
        Properties properties = new Properties();
        properties.load(new FileInputStream("src\\mysql.properties"));
        String user = properties.get("user").toString();
        String password = properties.get("password").toString();
        String url = properties.get("url").toString();
        String drive = properties.get("drive").toString();
     //加载驱动,建议写上,在mysql-connector-java-5.1.6-bin.jar 之后可以省略不写
     //service中有个文件java.sql.Driver 当中进行了配置
Class.forName(drive); Connection connection = DriverManager.getConnection(url, user, password); System.out.println("第五种方式拿到了连接:" + connection); connection.close(); }

 运行结果:

 

标签:java,String,url,Driver,properties,五种,connect,mysql,连接
From: https://www.cnblogs.com/dbcxy/p/16940943.html

相关文章

  • JAVA多线程有哪几种实现方式呢?
     下文笔者讲述java中多线程的实现方式,如下所示:JAVA中多线程主要有以下实现方式:1.继承Thread类2.实现Runnable接口3.使用ExecutorService、Call......
  • Oracle中ALTER TABLE的五种用法(四、五)
    首发微信公众号:SQL数据库运维原文链接:https://mp.weixin.qq.com/s?__biz=MzI1NTQyNzg3MQ==&mid=2247485212&idx=1&sn=450e9e94fa709b5eeff0de371c62072b&chksm=ea37536cdd......
  • java如何使用多个分隔符
    转自:​​http://www.java265.com/JavaJingYan/202205/16538031733553.html​​字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似字符......
  • Java进阶学习之反射与动态绑定(5)
    目录1.反射1.1.概述1.2.实现方式1.2.1.获取Class1.2.2.通过反射获取属性、设置属性1.2.3.通过反射获取方法、执行方法1.2.4.通过反射获取构造器并调用2.动态代理2.1.代理模......
  • JavaScript中的Error错误对象与自定义错误类型
    ErrorError是JavaScript语言中的一个标准的内置对象,专门用于处理JS开发中的运行时错误。当我们的JS代码在运行过程中发生错误的话,就会抛出Error对象,整个程序将会中断在错......
  • python连接使用达梦
     #!/usr/bin/envpython#coding=utf-8importos,json,urllib,datetime,shutilimportpsycopg2importtracebackimporttimegl_mysql_server="192.168.1.118"......
  • Java 时间格式化方法 DateTimeFormatter
    在 Java8之前,一般使用 SimpleDateFormat类进行时间格式化,但是这不是同步执行的方法,所以存在多线程执行不安全的问题。如果使用的是Java8之前的JDK,变成线程安全,就......
  • Java进阶学习之网络编程(4)
    目录1.网络编程概述1.1.目的1.2.常用的网络协议1.2.1.TCP1.2.2.UDP2.Socket网络编程2.1.Socket是什么2.2.Socket工作流程2.3.案例《计算机网络》作为计算机专业的必修课,估......
  • 面试题系列:Java 夺命连环16问
      1.说说进程和线程的区别?进程是程序的一次执行,是系统进行资源分配和调度的独立单位,他的作用是是程序能够并发执行提高资源利用率和吞吐率。由于进程是资源分配和调......
  • 配置ODBC连接KingbaseES数据库
    本文介绍如何通过ODBC连接KingbaseES数据库。1、配置odbc1)安装odbc,若有odbc则不用进行安装yum-yinstallunixODBC2)确认修改文件路径[root@node01~]#odbcinst-......