JDBC以反射机制加载类注册驱动连接MySQL
package test.jdbc;
//JDBC注册驱动的另一种方式:(这种方式常用)
/*
如何让一个类的静态代码块执行?
所以直接反射此处要学习到的这个类,class文件。这个类就会被加载进JVM,静态代码块在类加载时执行,所以就注册了
就是利用反射来加载Driver类,利用类中的静态代码块实现对驱动的注册
那么如何加载这个类?
非常简单:反射机制!
Class.forName("com.mysql.jdbc.Driver");
Class.forName(类名); 这个类的执行会导致后面类的加载!
//1 注册驱动
Class.forName("com.mysql.jdbc.Driver");
//这里我们不需要接收返回值,因为我们主要需要的是类加载这个动作,且只需要这个动作!。
//因为双引号括起来是字符串,字符串可以写到配置文件当中,
//这种方法常用是因为字符串可以写到文件中!
//但是这样不行,因为Class这个类会有异常,我们需要使用try
和catch
语句块来环绕
package test.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; //JDBC注册驱动的另一种方式:(这种方式常用) /* 如何让一个类的静态代码块执行? 所以直接反射此处要学习到的这个类,class文件。这个类就会被加载进JVM,静态代码块在类加载时执行,所以就注册了 就是利用反射来加载Driver类,利用类中的静态代码块实现对驱动的注册 那么如何加载这个类? 非常简单:反射机制! Class.forName("com.mysql.jdbc.Driver"); Class.forName(类名); 这个类的执行会导致后面类的加载! */ public class JDBC3 { public static void main(String[] args) { //1 注册驱动 //这里我们不需要接收返回值,因为我们主要需要的是类加载这个动作,且只需要这个动作!。 //因为双引号括起来是字符串,字符串可以写到配置文件当中, //这种方法常用是因为字符串可以写到文件中! try { Class.forName("com.mysql.jdbc.Driver"); //2 获取连接 Connection connection = DriverManager.getConnection("", "root", "rota"); // System.out.println(connection); } catch (SQLException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Java @Async注解导致spring启动失败解决方案详解
这篇文章主要介绍了Java @Async注解导致spring启动失败解决方案详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下2021-08-08MyBatis insert语句返回主键和selectKey标签方式
这篇文章主要介绍了MyBatis insert语句返回主键和selectKey标签方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-09-09JAVA面试题 从源码角度分析StringBuffer和StringBuilder的区别
这篇文章主要介绍了JAVA面试题 从源码角度分析StringBuffer和StringBuilder的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,下面我们来一起学习下吧2019-07-07
最新评论