MongoDB了解及学习(1)

  很久没有写博客了,果然,懒惰是人类唯一的敌人。不知道为什么,这一段时间的自己都是比较迷茫的,可能也和这段时间工作有点忙有原因,但是这也不是一个好的借口。总之,这一段的博客自己后面还是慢慢补上自己欠下的债吧,反正自己也有记录。

  在这一段时间中的开发使用到了MongoDB,因为业务的关系,要做报表有关的业务逻辑。所以使用到了MongoDB最开始有点不明白的,因为使用MySQL习惯了,所以认为MongoDBMySQL没有什么太大的区别,不就是存储的对象的形式不一样?这也是了解的太少,后面慢慢的了解,知道了一些MongoDB的优点。下面就记录一下自己学习到的一些知识。

  安装MongoDB很简单,下面就简单的介绍一下mac安装的步骤。下载安装包,解压,移动到指定的目录下就完成了简单的安装,在安装目录下使用命令访问就可以了。

  后面的对于我来说就有点麻烦了,就是配置全局路径。因为mac也是刚使用不久,所以对于一些基础的命令还是不清楚。所以这一步都是看网上的教程。最后也是完成了。下面就说说具体干了什么。

  1.配置全局路径,找到bash_profile文件,添加MongoDB_HOME,并且修改PATH路径,最后使修改成效。这样就完成了第一步。

  2.MongoDB路径下增加datalog目录,修改mongoDB的数据库路径和log路径。这样就完成了mongoDB的安装。在终端敲击mongo就会启动mongoDB

  3.启动后,可以配置mongo的用户名和密码,这里说一下配置的用户,一个admin用于增加用户和删除用户,一个root用户最高权限,一个name用户用户连接特定的数据库(name可以随意起)。

  安装也是参考了别人的安装,就是下面的这篇博客。https://www.cnblogs.com/quickcodes/p/5390482.html

  完成了安装,下面就开始简单的使用,因为是初步的使用,所以就是简单的存取。

  首先是导入依赖:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

  在application.yml文件中配置MongoDB的信息

data:
  mongodb:
    uri: mongodb://admin:admin@localhost:27017/test

  配置uri的时候发现了一个问题,最开始使用的如下的配置格式。

data:
  mongodb:
    host: 192.168.22.208
    port: 27017
    database: wpew
    username: wpew
    password: wpewUser

  发现一直无法使用用户名和密码登录,去掉用户名密码可以。最开始以为mongo中用户名和密码错误,但是后来用该用户名和密码直接登录发现可以登录。后来改为上面的格式就可以了,目前不知道原因,可能是和依赖的版本有关,大家知道原因的也可以在评论中告知一下,非常感谢。

  下面就是代码中关于mongo的操作。增删改查基本的操作,后面更加复杂的聚合查询暂时还没有用到,后面也会慢慢补上。

  在具体的操作前需要先注入一个mongoTemplate对象,然后在完成具体的数据库的操作。

  操作都是很简单的,大部分都是一行代码,比如保存一个对象:

mongoTemplate.insert(userDO);

  根据指定字段查询对象:

Query query = new Query(Criteria.where("userName").is(userName));
UserDO userDO = mongoTemplate.findOne(query, UserDO.class);

  这些都是一些基础的东西,具体深入的东西目前还没有接触到,后面还是要接着学习。

  说说具体遇到的问题吧,依赖的版本导致自己试了很久,后来导入正确的依赖就没有什么大问题了,大家写项目的时候一定要注意各个组件的依赖之间是否互斥。再后面就是配置的问题,和上面的一样,因为yml里面的格式导致了自己的代码一直报错,也是很郁闷。

  代码放在了自己的GitHub上面。地址是https://github.com/qq1162210866/SpringBootTrain.git

  就这样吧,结束。

猜你喜欢

转载自www.cnblogs.com/yanyu01/p/10067674.html