1、总体说明


现在java读取mdb数据(也就是链接access数据库读取数据)对jdk的版本有要求,jdk1.8以前的可以直接链接access数据 库读取数据,而jdk1.8以后的都需要加载一个连接驱动,我用的就是jdk1.8,而驱动呢 我用的是ucanaccess.jar。话不多说直接上代码:

 private static Connection getConnection(String path) {if (null == connection) {resetConnection(path);return connection;} else {return connection;}}private static void resetConnection(String path) {try {String mdbPath = "jdbc:ucanaccess://" + path + ";skipIndexes=true";Class.forName("net.ucanaccess.jdbc.UcanaccessDriver").newInstance();long startTime = System.currentTimeMillis();connection = DriverManager.getConnection(mdbPath,"user","123");long endTime = System.currentTimeMillis();System.out.println("连接数据库时间: " + (endTime - startTime) + "ms");} catch (Exception e) {e.printStackTrace();}}/*** 连接mdb并执行sql*/public static JSONArray linkMDB(String path, String sql, boolean update) throws Exception {if (path.isEmpty() && sql.isEmpty()) {throw new Exception("mdbd的路径和sql操作不能为空");}Connection connection = getConnection(path);Statement statement = connection.createStatement();JSONArray result = null;if (!update) {ResultSet rs = statement.executeQuery(sql);result = resultSetToJson(rs);} else {statement.executeUpdate(sql);}statement.close();return result;}/*** 转换mdb查询结果*/private static JSONArray resultSetToJson(ResultSet rs) throws SQLException, UnsupportedEncodingException {// json数组JSONArray array = new JSONArray();// 获取列数ResultSetMetaData metaData = rs.getMetaData();int columnCount = metaData.getColumnCount();// 遍历ResultSet中的每条数据while (rs.next()) {JSONObject jsonObj = new JSONObject();// 遍历每一列for (int i = 1; i <= columnCount; i++) {String columnName = metaData.getColumnLabel(i);String columnTypeName = metaData.getColumnTypeName(i);if (null != columnName) {String gbk = null;Object query = null;try {query = rs.getObject(i);} catch (Exception e) {e.printStackTrace();}if (query != null) {jsonObj.put(columnName, query);}if (gbk != null) {jsonObj.put(columnName, gbk);}}}array.add(jsonObj);}rs.close();return array;}
第一次写博客,写的不好的还望大家见谅,不懂的和不对的可以在评论区留言,我都会一一解答的。

java读取mdb类型的数据相关推荐

  1. java读取各类型的文件

    java读取各类型的文件 用到的几个包 bcmail-jdk14-132.jar/bcprov-jdk14-132.jar/checkstyle-all-4.2.jar/FontBox-0.1.0-d ...

  2. Apache POI和EasyExcel 第五集:Apache POI的Excel读取不同类型的数据

    Apache POI和EasyExcel 第五集:Apache POI的Excel读取不同类型的数据 一.资源 什么是Apache POI Apache POI 不同类型的数据的表格(xls) 链接: ...

  3. 杂记(1)java读取char类型2. 大小写字母的转换3. 字符串的拼接4. 一串数字排序

    1. java读取char类型 应为java中没有nextchar();函数,所以只能先读取一行,即 Sting a=sc.nextline(); char need=a.charAt(0);//取字 ...

  4. 通过OracleDataReader来读取BLOB类型的数据 (转载)

     通过OracleDataReader来读取BLOB类型的数据  在实际的应用过程中,需要把大块的二进制数据存储在数据库中.读取这些大块的数据,可以通过强制类型转换成为byte数组,但是当这个二进制数 ...

  5. Java读取和解析Excel数据:基于Apache POI(二)

    Java读取和解析Excel数据:基于Apache POI(二) 假设附录1文章中的test.xls是对员工的考勤记录表.需要根据这张excel表统计员工的加班时间,那么需要重点关注第五列的下班时候的 ...

  6. 如何用Java读取单元格的数据_Java读取Excel中的单元格数据

    目前网上能找到Web平台下的读取Excel表格中数据的两种比较好的方案:PageOffice好用开发效率高:POI免费.供大家参考,针对具体情况选择具体方案. 1. PageOffice读取excel ...

  7. java 读取硬件设备发送数据_Java网络编程基础

    1.软件结构 C/S结构:全称为Client/Server结构,是指客户端和服务器结构.常见程序有QQ.迅雷等软件. B/S结构:全称为Browser/Server结构,是指浏览器和服务器结构.常见浏 ...

  8. java读取Oracle中大字段数据(CLOB)的方法

    2.Oracle数据库中有一个字段是CLOB类型,使用java 解析. 1.使用java解析clob类型内容 public String clobToString(Clob c) {StringBuf ...

  9. 通过OracleDataReader来读取BLOB类型的数据

    在实际的应用过程中,需要把大块的二进制数据存储在数据库中.读取这些大块的数据,可以通过强制类型转换成为byte数组,但是当这个二进制数据体够大时(几十兆或者上百兆),一次并不能获取到他的完整长度,所以 ...

最新文章

  1. 三年51亿!30岁的TA携「三瑞」打通场景级智慧,走入极「智」医疗
  2. 你知道 URL 后面的这些 utm_xxx 参数都是干嘛的吗?
  3. 南华大学计算机学院足球队,球场健儿,不言放弃——记南华大学“新生杯”足球赛...
  4. Fragment详解之四——管理Fragment(2)
  5. 线性代数笔记:Khatri-Rao积
  6. 《系统集成项目管理工程师》必背100个知识点-87系统文档验收
  7. 简述ospf的工作原理_现代数字存储示波器的工作原理简述
  8. DB2 Vs MySQL系列 | 体系架构对比
  9. python代码混淆工具_有没有好的 python 混淆器 推荐一个
  10. 实验7-3-4 字符串替换 (15 分)
  11. 使用 IDEA 创建 Scala 工程
  12. mysql day of week_在MySQL中按day_of_week排序
  13. 构造方法传参数的小心得
  14. 陕西2020行政区划调整_陕西行政区划调整畅想:西安咸阳合并可行,但成立直辖市不太现实...
  15. 解决WEPE(微pe)安装win11时这台电脑不符合Windows所需的最低系统要求
  16. WiFi 桥接功能 — 基于Linux路由器
  17. 计算机主机序列,SCCM任务序列自动根据SN号命名计算机
  18. FZU1892接水管游戏-BFS加上简单的状态压缩和位运算处理
  19. Global Malmquist-Luenberger 指数分解及matlab应用,文后有网盘链接
  20. 树莓派串口简单测试语音识别模块

热门文章

  1. go实现分布式爬虫1
  2. anyproxy批量自动采集微信公众号文章
  3. JavaScript一维数组、二维数组的深拷贝
  4. ps cs6移除html,彻底卸载并清除Adobe photoshop CC/CS6安装残留的神器
  5. hexo给文章插入图片、进行图片样式控制
  6. 服务器修改远程链接端口号,怎么修改服务器的远程连接端口号
  7. 如何修改远程桌面的端口号以及修改远程桌面端口的软件
  8. mysql桥梁模式_桥接模式(Bridge Pattern)
  9. 软通动力外派华为手机
  10. 2021-2025年中国CFD在航空航天和国防中的应用行业市场供需与战略研究报告