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(); } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
JDBC连接MySQL并实现模糊查询
场景: 在学习JDBC的语言中,每次都执行通用的几步:即注册驱动,获取连接,创建操作,处理结果,释放资源 过于复杂,因此不妨将上述步骤封装成工具类,只对外提供方法! 描述: 这是不使用工具类的封装写出来的代码,比较冗余复杂 package com.zdx.JDBC; import java.sql.*; public class JAVA1129_5 { public static void main(String[] args) { //设置空对象,注册驱动,获取连接,创建操作,处理结果集,释
-
Java连接MySQL8.0 JDBC的详细步骤(IDEA版本)
一.导入jar包 1.下载jar包:https://dev.mysql.com/downloads/ 2.导入 在项目文件夹下新建一个名为lib的文件夹 将下载好的jar包放入lib文件夹,然后右击lib文件夹,选择Add as Library...,然后点击ok 二.代码部分 1.加载驱动 Class.forName("com.mysql.cj.jdbc.Driver"); 2.用户信息和url String url = "jdbc:mysql://localhost:33
-
JDBC连接的六步实例代码(与mysql连接)
JDBC的六步: 1.注册驱动 2.获取数据库的连接 3.获取数据库的操作对象 4.执行sql语句 5.处理查询结果集(如果执行的语句中没有select语句这一步不用写) 6.关闭资源 第一步:注册驱动 //异常一定是需要处理的 //根据版本不同书写的代码有一些变化,老版本是 DriverManager.register(new com.mysql.jdbc.Driver()); //或者 Class.forName("com.mysql.jdbc.Driver"); //新版本是 D
-
MySQL数据库 JDBC 编程(Java 连接 MySQL)
目录 1. 数据库编程的基础条件 2. Java 的数据库编程:JDBC 3. JDBC 访问数据库的层次结构 4. MySQL 数据库操作介绍 5. MySQL 驱动包的下载及添加到项目 6. JDBC 使用步骤 6.1 创建数据库源,连接 Connection 6.2 构造 SQL 语句,为执行的操作做准备 6.3 执行 SQL,并处理结果集 6.4 释放资源 6.5 JDBC 编程模板 7. JDBC 常用接口和类 7.1 DataSource 和 MysqlDataSource 7.2
-
JDBC连接MySql数据库步骤 以及查询、插入、删除、更新等
主要内容: JDBC连接数据库步骤. 一个简单详细的查询数据的例子. 封装连接数据库,释放数据库连接方法. 实现查询,插入,删除,更新等十一个处理数据库信息的功能.(包括事务处理,批量更新等) 把十一个功能都放在一起. 安装下载的数据库驱动程序jar包,不同的数据库需要不同的驱动程序(这本该是第一步,但是由于属于安装类,所以我们放在最后) 一.JDBC连接数据库(编辑)步骤(主要有六个步骤) 1.注册驱动: Class.forName("com.mysql.jdbc.Driver");
-
Java之jdbc连接mysql数据库的方法步骤详解
Java:jdbc连接mysql数据库 安装eclipse和mysql的步骤这里不赘述了. 1.一定要下jar包 要想实现连接数据库,要先下载mysql-connector-java-5.1.47(或者其他版本)的jar包.低版本的jar包不会出现时差问题的异常. 建议在下载界面点右边的"Looking for previous GA versions?"下载低版本的. https://www.jb51.net/article/190860.htm我看的是这个教程. 2.mysql前期
-
JDBC连接MySQL数据库批量插入数据过程详解
这篇文章主要介绍了JDBC连接MySQL数据库批量插入数据过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.读取本地json数据 2.jdbc理解数据库 3.批量插入 maven 引入jar包: <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2
-
JDBC连接MySQL5.7的方法
1.首先准备mysql 和eclipse环境,在环境搭建好之后,从eclipse官网下载jdbc的驱动包,下载地址http://dev.mysql.com/downloads/connector/j/ 2.从下载的文件中取出mysql-connector-java-5.1.31-bin.jar,放到工程中,并导入路径 方法:右击工程名->Build Path->Configure Build Path,选择Add External JAR... 找到mysql-connector-java-5
-
JDBC以反射机制加载类注册驱动连接MySQL
package test.jdbc; //JDBC注册驱动的另一种方式:(这种方式常用) /* 如何让一个类的静态代码块执行? 所以直接反射此处要学习到的这个类,class文件.这个类就会被加载进JVM,静态代码块在类加载时执行,所以就注册了 就是利用反射来加载Driver类,利用类中的静态代码块实现对驱动的注册 那么如何加载这个类? 非常简单:反射机制! Class.forName("com.mysql.jdbc.Driver"); Class.forName(类名); 这个类
-
java 利用java反射机制动态加载类的简单实现
如下所示: ////////////////// Load.java package org.bromon.reflect; import java.util.ArrayList; import java.util.List; public class Load implements Operator { @Override public List<?> act(List<?> params) { // TODO Auto-generated method stub List<
-
PHP通过反射动态加载第三方类和获得类源码的实例
使用反射动态加载第三方类 用反射加载第三方类用处在于: 使用XML或其他配文件配置要加载的类,从而和系统源代码分离. 对加载的类进行类检查,是加载的类符合自己定义的结构. <?php abstract class Module { #核心Module类库 function baseFunc() { echo "I am baseFunc"; } abstract function execute(); } class ModuleRunner { private $configD
-
php _autoload自动加载类与机制分析
在PHP5之前,如果需要使用一个类,只需要直接使用include/require将其包含进来即可 test.class.php 复制代码 代码如下: <?php class abc{ function __construct() { echo 'www.hzhuti.com; } } ?> load.php 代码如下 复制代码 代码如下: <?php class LOAD { static function loadClass($class_name) { $filename = $cl
-
使用springboot通过spi机制加载mysql驱动的过程
SPI是一种JDK提供的加载插件的灵活机制,分离了接口与实现,就拿常用的数据库驱动来说,我们只需要在spring系统中引入对应的数据库依赖包(比如mysql-connector-java以及针对oracle的ojdbc6驱动),然后在yml或者properties配置文件中对应的数据源配置就可自动使用对应的sql驱动, 比如mysql的配置: spring: datasource: url: jdbc:mysql://localhost:3306/xxxxx?autoReconnect=true
-
PHP命名空间和自动加载类
PHP的命名空间(namespace)是php5.3之后才有的.这个概念在C#中已经很早就有了,php中的namespace其实和c#的概念是一样的. 为什么php中要使用namespace? 假设如果不使用namespace,那么每个类在一个项目中的名字就必须是固定的.因为php在new的时候不管是调用autoload还是调用已加载过的类,都存在一个类名对应的文件.所以在没有namespace的时候,我们会想各种命名规则来区分不同的类,比如project1_school1_class1_Stu
-
Android编程图片加载类ImageLoader定义与用法实例分析
本文实例讲述了Android编程图片加载类ImageLoader定义与用法.分享给大家供大家参考,具体如下: 解析: 1)图片加载使用单例模式,避免多次调用时产生死锁 2)核心对象 LruCache 图片加载时先判断缓存里是否有图片,如果有,就使用缓存里的 没有就加载网络的,然后置入缓存 3)使用了线程池ExecutorService mThreadPool技术 4)使用了Semaphore 信号来控制变量按照先后顺序执行,避免空指针的问题 如何使用: 在Adapter里加载图片时 复制代码 代
-
PHP命名空间与自动加载类详解
本文实例讲述了PHP命名空间与自动加载类.分享给大家供大家参考,具体如下: 今天我要给大家介绍的是PHP的命名空间 和 自动加载类 我先简单的分开演示 在放在一起 大家请看: 什么是自动加载类? 想必大家都应该知道__autoload 这个魔术方法 $db = new DB(); function __autoload($className) { echo $className; exit(); //在这个里面引用类 } 在运用这个类只能加载一次 ,在很多时候我们要引入的不止一个类这个时候怎么办
-
Laravel如何实现自动加载类
本人水平有限,如有错误望告知,谢谢! Laravel如何实现自动加载类 Laravel使用的是composer的自动加载. 首先看 vendor/autoload.php文件 <?php // autoload.php @generated by Composer require_once __DIR__ . '/composer/autoload_real.php'; return ComposerAutoloaderInit5586036d8fdd45ae351f9a5ae924a5a3::
-
PHP 自动加载类原理与用法实例分析
本文实例讲述了PHP 自动加载类原理与用法.分享给大家供大家参考,具体如下: 类的自动加载 (Autoloading Classes) 在编写面向对象(OOP) 程序时,很多开发者为每个类新建一个 PHP 文件. 这会带来一个烦恼:每个脚本的开头,都需要包含(include)一个长长的列表(每个类都有个文件). 在 PHP 5 中,已经不再需要这样了. spl_autoload_register() 函数可以注册任意数量的自动加载器,当使用尚未被定义的类(class)和接口(interface)
随机推荐
- 浅谈在Vue-cli里基于axios封装复用请求
- Python利用pyHook实现监听用户鼠标与键盘事件
- php自动加载方式集合
- linux shell中的比较符号与特殊符号介绍
- 全面理解Python中self的用法
- C#异步下载文件
- C++类中的static和const用法实例教程
- php设置页面超时时间解决方法
- Zen Coding css,html缩写替换大观 快速写出html,css
- 使用AWS的ELB服务时为Nginx启用代理协议的步骤讲解
- sqlserver 触发器实例代码
- Java数据结构(线性表)详解
- iframe中使用jquery进行查找的方法【案例分析】
- JavaScript手风琴页面制作
- Boostrap基础教程之JavaScript插件篇
- Android提高之AudioRecord实现助听器的方法
- 详解C++中变量的初始化规则
- 解析argc argv在php中的应用
- vue+swiper实现侧滑菜单效果
- Java实现的执行python脚本工具类示例【使用jython.jar】