小编典典

到目前为止,您需要扫描整个类路径(和子文件夹)以查找实现类的类java.sql.Driver。这样,您还将涵盖 没有

由手动Class#forName()或自动加载的驱动程序META-INF/services。

这是一个基本示例:

public static void main(String[] args) throws Exception {

List> drivers = findClassesImplementing(Driver.class);

System.out.println(drivers);

}

public static List> findClassesImplementing(Class cls) throws IOException {

List> classes = new ArrayList>();

for (URL root : Collections.list(Thread.currentThread().getContextClassLoader().getResources(""))) {

for (File file : findFiles(new File(root.getFile()), ".+\\.jar$")) {

JarFile jarFile = new JarFile(file);

for (JarEntry jarEntry : Collections.list(jarFile.entries())) {

String name = jarEntry.getName();

if (name.endsWith(".class")) try {

Class> found = Class.forName(name.replace("/", ".").replaceAll("\\.class$", ""));

if (cls.isAssignableFrom(found)) {

classes.add((Class) found);

}

} catch (Throwable ignore) {

// No real class file, or JAR not in classpath, or missing links.

}

}

}

}

return classes;

}

public static List findFiles(File directory, final String pattern) throws IOException {

File[] files = directory.listFiles(new FileFilter() {

public boolean accept(File file) {

return file.isDirectory() || file.getName().matches(pattern);

}

});

List found = new ArrayList(files.length);

for (File file : files) {

if (file.isDirectory()) {

found.addAll(findFiles(file, pattern));

} else {

found.add(file);

}

}

return found;

}

Set> drivers = reflections.getSubTypesOf(Driver.class);

2020-11-16

mysql查找jdbc驱动包_查找已安装的JDBC驱动程序相关推荐

  1. Java连接MySQL mysql-connector-java-bin.jar驱动包的下载与安装

    eclipse在连接mysql数据库的时候要通过mysql驱动包进行连接 首先进入官网中----官网地址:https://dev.mysql.com/ 进入官网中选择DOWNLOADS(下载) 2. ...

  2. MySql各版本jdbc驱动包下载地址

    前言:最近在学习一个SSM框架项目,发现自己mysql版本与资料上版本不一致,在网上找到MySql各版本jdbc驱动包下载地址,分享一下. MySql各版本jdbc驱动包下载地址:http://mvn ...

  3. Java各数据库的JDBC驱动包下载地址

    1. Oracle数据库的JDBC驱动包 https://www.oracle.com/technetwork/database/features/jdbc/jdbc-drivers-12c-down ...

  4. 解决Oracle jdbc驱动包maven下载失败问题

    由于Oracle版权限制,其jdbc驱动包不让人随便下载,这就给maven的下载和编译带来了麻烦. 解决办法是先获取jar包(方法一:去oracle官网下载,方法二:去oracle安装目录如produ ...

  5. maven添加sqlserver的jdbc驱动包

    http://search.maven.org/中没有sqlserver的jdbc驱动,所以需要本地安装sqljdbc的jar包,然后再在pom里面引入 Step 1 在微软官网下载sqljdbc的j ...

  6. MySQL和Oracle JDBC驱动包下载步骤

    MySQL官网:https://www.mysql.com/ 步骤如下: 1.点击DOWNLOADS 2.往下滑,找到MySQL Community(GPL)Downloands并点击 3.点击Con ...

  7. java jdbc jar包_大数据从入门到深入:JavaEE 之 数据库技术 JDBC(1)

    1章 JDBC 1.1 JDBC概述 JDBC(Java DataBase Connectivity,java动态数据 库连接技术)是一种用于执行SQL语句的Java API : Applicatio ...

  8. java jdbc jar包_通过 Spring 框架如何进行JDBC操作呢?

    Spring 整合 JDBC 的方式 添加依赖 编写配置文件 db.properties bean.xml 配置修改 配置数据源 模板类配置 测试整合结果 案例实操 添加依赖 数据库驱动 jar 包 ...

  9. mysql jdbc8.0驱动包下载_jdbc驱动jar包8.0.7 最新正式版 下载 - 51下载网

    Tags: 51下载网提供<jdbc驱动jar包>8.0.7 最新正式版下载,该软件为免费软件,文件大小为1.9 MB,推荐指数5颗星,作为国产软件中的顶尖厂商,完全可以放心下载哦! 20 ...

  10. idea新版:Java连接MySQL mysql-connector-java-bin.jar驱动包下载配置(全)

    目录 前言 1. 下载 2. 配置 前言 具体所需要使用的工具: 工具:idea编译器 包:jdbc的jar驱动包 idea连接数据库的时候需要使用的一个驱动包 同理其他编译器 1. 下载 通过官网下 ...

最新文章

  1. fail-fast和fail-safe的介绍和区别
  2. 从原理到代码,轻松深入逻辑回归模型!
  3. 5月14日 游戏闯关,
  4. [Usaco2007 Oct] Super Paintball超级弹珠
  5. 回馈粉丝,送30本技术书。
  6. java isempty_Optional.isEmpty()即将加入Java吗?
  7. 乐播投延迟很高_大屏也要高刷新!华为4K@120智慧屏初体验,屏幕软件都够硬
  8. 必须进行支持的游戏方可使用此功能_C#8.0 新增功能
  9. 22 WM配置-策略-入库策略2-定义未清存储策略C(Open Strategy)
  10. StringBuffer与StringBuilder的作用与区别
  11. 想成为编程高手,从基础做起
  12. springboot之redis整合
  13. array在java_在Java中的ArrayLists之间进行转换
  14. python实现bt下载器_10行 Python代码使用磁力链接批量下载种子
  15. 透明背景视频的制作与应用
  16. 相关证书介绍(SSL,X.509,PEM,DER,CRT,CER,KEY,CSR,P12等)
  17. 四月一个晴朗的早晨,遇见一个百分之百的女孩
  18. 教会AI认识麻将牌之实践篇
  19. 位与:一个数1的结果
  20. 利用matlab从TXT中读数据1

热门文章

  1. 内网渗透(一)——本机信息收集
  2. attachEvent方法的作用
  3. PCI Geomatica 操作视频专辑
  4. 税控接口 - 模拟录入
  5. c2c网站开店的流程图_C2C电子商务网站的交易流程
  6. 速达软件登录远程客户端总提示检查卡号密码
  7. html设计判断闰年,判断是否是闰年_JavaScript判断是否闰年 闰年计算方法
  8. 【剑指Offer(专项突击版)】001~059题目题解汇总
  9. Renesas:RH850G3KH 2.0内核简单知识整理
  10. To C、To G、To B,数字化转型