美文网首页
【Java】爬虫,数据持久化到MongoDB

【Java】爬虫,数据持久化到MongoDB

作者: 抓住那个理科生 | 来源:发表于2019-07-13 18:08 被阅读0次

    前言

    先上几盘菜尝尝:

    1. MongoDB是什么?【博客园】惨绿少年《MongoDB 入门篇

    2. MongoDB怎么安装?【菜鸟教程】《Windows 平台安装 MongoDB

    3. MongoDB快速上手?【CSDN】Xuych_《java连接mongoDB 并进行增删改查操作

    4. MongoDB全部用法?【菜鸟教程】《MongoDB 教程

    再送你一个MongoDB可视化操作工具:

    百度网盘

    链接:https://pan.baidu.com/s/11yOnpUfXknOFSkN8-hXzCg
    提取码:itt7

    运行结果:


    运行结果

    正文

    根据前言中的第二篇文章装好MongoDB之后,可以看一下第3篇文章,快速上手一下。
    然后看下面我的操作:
    我们在源代码中添加一个工具类MongoDBUtil,供Main方法调用


    MongoDBUtil

    昨天的源码中,只是单纯的在控制台打印评论,今天在Main类中加入两部分内容

    第一部分是在一开始,添加两行代码

    第一行:调用工具类中的建立数据库连接方法这时候会连接一个名为test的数据库,如果不存在就会创建。

    第二行:通过数据库创建一个MongoCollection名为comment,相当于一个表。

    MongoDB的名字与关系型数据库名字的对应关系如下:

    名称 MongoDB 关系型数据库
    数据库 MongoDatabase Database
    MongoCollection table
    行(记录) Document(org.bson.Document) row
    一开始

    第二部分是在Main类的66行左右加一些代码:


    添加一些代码

    然后就可以运行了。

    运行结束后从百度网盘下载我在前言给的MongoDB可视化工具,新建连接,查看对应的数据库表即可。
    链接:https://pan.baidu.com/s/11yOnpUfXknOFSkN8-hXzCg
    提取码:itt7

    最后

    中途我遇到了一个Bug,在此记录:

    MongoDB的insertMany(List)函数不允许插入一条空的list。然而我们知道,一篇新闻,在刚刚发布的时候,是没有评论的,所以会造成和MongoDB设计冲突。我也是查了StackOverflow才知道这个Bug

    Mongodb 3.0 “writes is not an empty list” error

    解决方法我已经在源码中体现了,就是先判断一下list是否为空,不为空则插入,否则跳过这篇文章,去拿下一篇文章的评论。

    源码GitHub地址

    也可以直接
    下载源码zip压缩包

    相关文章

      网友评论

          本文标题:【Java】爬虫,数据持久化到MongoDB

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