spring data 整合mongoDB基础篇

本文详细记录了作者学习MongoDB的过程,从安装到使用Spring Data操作MongoDB数据库。介绍了Spring Data的起源,强调了其简化数据库操作的目的。文章提供了Spring Data整合MongoDB的步骤,包括依赖配置、数据源设置以及实体类、DAO层和测试的实现,帮助读者建立完整的实践流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近几天一直再看这个mongoDB,按照Master的说法是先看看,后期会用这个做数据库。所以这几天完成从未接触到会用springdata 来操作mongodb数据库。后面如果在项目完成后或许会有更深的理解,到时会再更新总结。
实际网上的入门的百度一下很多了,但是很多资料已经过时了,在按照原来的做法就行不通,而剩下的大都缺少类,不是很系统全面。这里才感觉有必要来总结出自己的一套学习流程来,供大家参考。

1.mongodb的个人学习流程。

先去菜鸟教程上先按照说明安装好服务端和客户端(这俩在一块,和tomcat,redis很类似,服务端,客户端程序都是在bin目录中),后学习了前面的mongodb的sql语法,除了后面的分片,备份和监控,感觉开发也用不到就没看,直接跳过看最后的Mongodb java.
然后熟悉完就看spring data 整合mongodb,这部分是边做边学的,即按照博客上的步骤比葫芦画瓢完成,当然过程不是很顺利,因为资料确实不完整,试了好几次才搞定。

2.学习参考资料

mongodb的安装和入门级系统学习:菜鸟教程。下载安装在下图的箭头章节处。

这里写图片描述

解压下载的压缩包,就是下面的样子:
这里写图片描述
运行时有几个要知道:
1.mongod.exe 是服务端应用。mongo.exe是客户端应用。
2.一旦运行成功mongod.exe,即使你关了这个命令窗口,并不会退出这个服务,这个服务成了system系统程序,你只要开机,服务就会自动开启。

如果想用客户端图形界面来直观感受,可以到这里下载。点击download,我们选择exe这个安装就行了。
这里写图片描述

然后是初级进阶springdata 整合mongodb,这个可以看我这篇下面的介绍自己运行一遍就可以了解个差不多。我们知道spring,spring mvc,springboot,这有来个spring data,这些叫法怎么来的,有为啥这样叫?下面我们来说道说道。

3. spring XX 的由来

个人理解:所有的这些spring XX都是spring提供针对不同方向起的,比如spring mvc针对web层。spring则针对后台业务管理对象,注入等问题的解决。spring data则是针对持久层的spring子项目,目的在于简化数据库操作,减少数据访问层 (DAO) 的开发量。spring cloud针对微服务的。他们并没有严格上的分割线,而主要区别点就是从核心jar包来区分命名或许也是一种可能性。但是持久层由于面对的数据库的不同,也产生了不同的springdata子项目。通过下面这张图来了解一下大致分成了多少种。
这里写图片描述
今天我们的mongodb就是非关系型的集成文档数据库。

4.spring data整合mongodb

这里我用的是maven工程,引入依赖方便。实验项目整体结构如下:
这里写图片描述

4.1 引入springdata 整合mongodb依赖和测试依赖 –pom.xml。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.gaofei</groupId>
    <artifactId>MongoDemo</artifactId>
    <packaging>war</packaging>
    <version>0.0.1-SNAPSHOT</version>
    <name>MongoDemo Maven Webapp</name>
    <url>http://maven.apache.org</url>


    <dependencies>
        <!-- spring 整合junit需要的两个依赖 -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>4.3.10.RELEASE</version>
            <scope>test</scope>
        </dependency>
        <!-- spring 整合junit需要的两个依赖 -->
        <!-- mongodb数据库驱动 -->
        <dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>mongodb-driver</artifactId>
            <version>3.4.3</version>
        </dependency>
        <!-- mongodb数据库驱动 -->
        <!-- springdata整合mongodb -->
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-mongodb</artifactId>
            <version>1.10.6.RELEASE</version>
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

万米高空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值