springboot导入access数据库文件

springboot导入access数据库文件

hello,大家好,我是一名码农( 职场小白) ,老板让我做一个导入数据库access文件,不是一张表是很多张表,这可难到我了,于是我从网上各种找资料,一步一步测试,一点点排雷,用了两个星期才做出来,哈哈哈下面给大家找出一起坑大家可以评论留言你们遇到的那些坑???

首先 连接access数据库

这里坑就来了:
网上各种各样的方法去连接 但是jdk版本有的支持有的不支持我就不太明白了,连接不上各种报错,报错代码就不贴了
具体的我也不太懂,就给看一下我是怎么解决的,怎么连接的.
1.代码如下:`pom中添加依赖

 <dependency>
            <groupId>net.sf.ucanaccess</groupId>
            <artifactId>ucanaccess</artifactId>
            <version>4.0.3</version>
 </dependency>

2.配置application.properties

spring.datasource.url=jdbc:ucanaccess://D:/filePath/zccess.mdb;
spring.datasource.driver-class-name=net.ucanaccess.jdbc.UcanaccessDriver

我的是直接写所以没有配置,按照自己需求写就可以
3.连接成功读取表

  Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
                con = DriverManager.getConnection("jdbc:ucanaccess://" + filePath);
                st = con.createStatement();
                DatabaseMetaData dbmd = con.getMetaData();
                ResultSet rstable = dbmd.getTables(null, null, "%", null);
                while (rstable.next()) {
                    String sqlname = rstable.getString(3);
                    rs = st.executeQuery("select * from " + sqlname);
                     while (rs.next()) {
                        if (sqlname.equals("student")) {
                            studentbean = getEachRow(rs, student.class);
                            if (bean != null) {
                                res =studentService.insertSelective(bean);
                                res == 1 ? "student录入成功!" : "student录入失败!"; 
                            }
                        }
                }

注:rstable 读取表名
sqlname 表名
这里是多个表需要做循环读取,一个表的录入数据啦,这里读取数据和bean作对比录入,代码我在网上找的,大家可以自己找,谢谢大家,我是一名小白,很多不懂的大家多多包含,多多指教

你可能感兴趣的:(数据库,mysql,java,jdbc,spring,boot)