Springboot连接mongodb博客

Springboot连接mongodb,mongodb是一个非关系型数据库,文档型数据库,存储的内容是JSON格式的文档,文档中可以包含各种类型的数据。
Springboot连接mongodb需要引入mongoDB的驱动依赖,在pom.xml中添加:

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

在application.properties中添加mongoDB的连接配置:

spring.data.mongodb.host=localhost
spring.data.mongodb.port=27017
spring.data.mongodb.database=test

在Springboot启动类中添加@EnableMongoRepositories注解开启MongoDB的Repository功能:

@SpringBootApplication
@EnableMongoRepositories
public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);}
}

接下来就可以注入MongoRepository来对MongoDB进行CURD操作了:

@Autowired
private MongoRepository<User,Long> userRepository;

User是实体类,Long是主键类型。

@Data
public class User {private Long id;private String username;private String password;
}

测试代码:

@Test
public void testMongoDB(){//插入User user = new User();user.setUsername("xiaoming");user.setPassword("123456");userRepository.insert(user);//查询User result = userRepository.findById(1L);//更新user.setPassword("654321");userRepository.save(user);//删除userRepository.deleteById(1L);
}

MongoRepository提供了很多常用的方法:

  • insert:插入
  • save:保存(更新或插入)
  • findById:根据id查询
  • findAll:查询所有
  • count:统计数量
  • deleteById:根据id删除
  • existsById:判断id是否存在
  • findBy***:根据属性查询
    MongoRepository继承Repository接口,Repository接口提供了分页查询的方法:
  • Page findAll(Pageable pageable)
  • Page findBy*** (Pageable pageable,*)
    Pageable参数可以指定:
  • 页数
  • 每页记录数
  • 排序字段和排序方式
    @Query注解可以自定义复杂查询,如正则查询、分页等高级查询:
@Query("{username : { $regex : '.*ming.*'}}")
List<User> findByUsernameLike();

以上就是Springboot连接MongoDB的基本使用了,更多高级用法可以参考Spring Data MongoDB官方文档。

上一章:三、mongdb 查询

下一章:五、spring-data-mongodb中Java字段映射注解

四、Springboot连接mongodb相关推荐

  1. 六十八、SpringBoot连接MongoDB操作

    @Author:Runsen Spring data提供了操作多种数据库的支持,其api简洁,调用方便.我们使用Spring data进行MongoDB连接. 文章目录 添加配置 代码编写 添加配置 ...

  2. springboot连接mongodb

    引入依赖 <dependencies><dependency><groupId>org.springframework.boot</groupId>&l ...

  3. springboot集成mongodb 连接池 多数据库源,源码demo

    上一篇介绍了 springboot集成mongodb 多数据库源切换 源码demo 开发环境: windows 7 idea windows64 mongodb 如果没安装运行 点这里 navicat ...

  4. Node.js详解(四):连接MongoDB

    文章目录 一.安装MongoDB访问驱动 二.连接数据库 三.添加数据 四.添加多条数据 五.修改数据 六.查询数据 1.查询单条记录 2.查询多条记录 七.删除数据 八.完整示例代码 1.路由 Ap ...

  5. 【ReactJs+springBoot项目——租房】第6章:MongoDB入门+SpringBoot整合MongoDB+搭建微聊系统+实现微聊功能

    MongoDB入门 MongoDB的java api的使用 SpringBoot整合MongoDB使用 搭建微聊系统 实现微聊功能 分布式WebSocket解决方案分析 1.MongoDB入门 1.1 ...

  6. Windows下安装Mongodb SpringBoot集成MongoDB和Redis多数据源

    全文内容: Mongodb安装 说明:Mongodb和redis是开发中常用的中间件,Redis的安装使用比较简单就不写了,只说本地也就是Windows安装Mongodb. SpringBoot集成M ...

  7. python mongodb orm_Django 通过 mongoengine 连接 MongoDB 进而使用orm进行CRUD

    一. 在python脚本中, 我们通常可以使用pymongo模块实现与mongodb数据库的交互, 但是在使用Django框架进行定制开发的web server 项目中, 仍然使用pymongo模块的 ...

  8. Springboot中mongodb的使用

    mongodb是最早热门非关系数据库的之一,使用也比较普遍,一般会用做离线数据分析来使用,放到内网的居多.由于很多公司使用了云服务,服务器默认都开放了外网地址,导致前一阵子大批 MongoDB 因配置 ...

  9. JAVA连接 mongodb(mac OSX)

    JAVA连接 mongodb 第一步:配置java环境 第二步:下载jar包 (本人采用了直接下载,然后build path的方式) 第三步使用eclipse: 下载.安装.打开 第四步创建工程 找到 ...

最新文章

  1. JavaScript奇技淫巧44招(2)
  2. 初试Windows 8 RTM
  3. Java黑皮书课后题第10章:*10.6(显示素数)编写一个程序,然后按降序显示小于120的所有素数。使用StackOfIntegers类存储这些素数,获取之后按逆序显示它们
  4. uva 10608 FRIENDS
  5. 《代码之美》第六章:菜鸟的自圆其说
  6. Docker下redis的主从配置
  7. 计算机上机计划,计算机上机实验内容及实验报告总结计划要求-20210711144121.doc-原创力文档...
  8. python中素数的求法_Python 2种方法求某个范围内的所有素数(质数)
  9. luogu P2765 魔术球问题 (最小路径覆盖)
  10. Android自定义的属性使用双向绑定
  11. 机器学习之监督学习-分类模型K近邻(KNN)算法实现
  12. 2016一路有你,2017一起同行
  13. flutter页面布局HTML,Flutter开发实战初级(2)页面布局详解
  14. ubuntu如何用快捷键截图
  15. matlab学习笔记9 高级绘图命令_2 图形的高级控制_视点控制和图形旋转_色图和颜色映像_光照和着色
  16. 数据可视化应用到营销中的5个超酷案例
  17. 美的、九阳、苏泊尔“变粉”,女性小家电成下一片“蓝海”?
  18. VUE 保留 四位小数
  19. Android Studio 完成屏幕适配
  20. 数值分析-秦九韶算法

热门文章

  1. 使用命令连接XAMPP中的mysql
  2. iOS应用如何防止被反编译
  3. ZigBee_CC2530_0BH_动态切换PANID
  4. html拖拽垃圾桶,html5拖放-垃圾桶效果
  5. Excel数据处理(缺失值/重复值/异常值/拆分)
  6. javaweb基于SSM开发个人记账管理系统 课程设计 大作业源码
  7. OpenCV-Python学习(14)—— OpenCV 绘制箭头线(cv.arrowedLine)
  8. (转)太阁立志传立志传5太阁立志传技巧篇
  9. 网卡绑定bond0的实现
  10. PS基础操作之图像处理(二)