美文网首页
mdb格式数据清洗

mdb格式数据清洗

作者: 逍逍潇潇消消 | 来源:发表于2019-08-02 17:44 被阅读0次

    mdb格式是微软ACCESS数据库文件,可直接从access打开。本文主要是实现转为json格式文件的操作。

    处理步骤:

    1.预处理:

    1)导入驱动

    下载地址:https://download.csdn.net/download/raindrop1988/10499459

    官网的版本只支持查询一千条,所以建议下载以上的破解版本。

    需加载驱动:

    com.hxtt.sql.access.AccessDriver

    url:

    "jdbc:Access:///数据库文件路径"

    连接示例:

    package Test_01;

    import java.sql.Connection;

    import java.sql.DriverManager;

    import java.sql.ResultSet;

    import java.sql.Statement;

    public class MySQLTest {

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

            try {

                ///加载驱动jar

                Class.forName("com.hxtt.sql.access.AccessDriver").newInstance();   

                //指定Access数据库文件的位置

                String url = "jdbc:Access:///d:/a1.mdb";//注意此处的斜杠是三个

                //建立连接

                Connection conn = DriverManager.getConnection(url, "", "");

                Statement sta = conn.createStatement();

    //输入表名

                String sqlStatement= "SELECT * FROM name";

                ResultSet rs = sta.executeQuery(sqlStatement);

                System.out.println("\n查找到的学生信息");

                System.out.println("--------------------------");

                while (rs.next()) {

                    System.out.print(rs.getString(2)+"\t");

                    System.out.print(rs.getString(3)+"\t");

                    System.out.print(rs.getString(4)+"\t");

                    System.out.print(rs.getDate(5)+"\t");

                    System.out.print(rs.getDouble(6)+"\n");

                }

            }catch (Exception e) {

                e.printStackTrace();

            }

        }

    }

    2.处理框架

    4)处理模块及功能:

    loader:

    接口。

    含有:next(),hasNext().

    功能:定义有表头数据库某一行处理方法都必须要使用的两个函数。

    AccessLoaderWithTitle:

    Access处理实现类。

    next:返回结果字符串

    txtLoader:建立Access数据库连接,并读取key和对应value。

    hasnext:判断是否有下一行,并把字符串写入jsonobject。

    ToResultInterface:

    接口。

    含有:getResult(line)

    功能:定义各种字符串得到jsonobject的方法。

    SpiltToResultTmpl:

    继承自ToResultInterface的具体实现类。

    功能:将一行jsonobject的映射到的key和value重组,形成已经映射好的jsonobject。

    AbstractProcessFactory:

    抽象类。

    含有:loader 和ToResultInterface两个接口。以及组装全流程的方法process。

    功能:定义作为一个工厂的组装全部组件的功能。

    SQLfactory:

    继承自AbstractProcessFactory的带表头工厂具体实现类。

    adjustResult:对某一条jsonobject的字段名或值进行处理,添加source字段,entityname字段,rowkey字段。

    main:设置路径,映射字段的映射,编码格式,将结果写入文件。

    5)处理框架步骤

    主要由工厂,处理某一行的sqlloader组件,映射重组的ToResult组件,组成。

    在工厂中:

    1.将参数填好

    2.初步处理文件:

               a.每一行数据读取并抽出变成jsonobject

               b.jsonobject转变成想要的映射

    3.调整到最终内容

    4.写入文件。

    注意:数据库存在空值,注意做字符串处理。

    相关文章

      网友评论

          本文标题:mdb格式数据清洗

          本文链接:https://www.haomeiwen.com/subject/yghrdctx.html