spring boot集成mongodb的增删改查的示例代码

 更新时间:2021年03月22日 09:30:15   作者:公号:Java高级架构师  
这篇文章主要介绍了spring boot集成mongodb的增删改查的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

添加依赖

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

properties配置

spring.data.mongodb.host=127.0.0.1
spring.data.mongodb.port=27017
spring.data.mongodb.database=enterprise_dc_db
spring.data.mongodb.username=enterprise_dc_dba
spring.data.mongodb.password=123456
 
server.port=8081

创建实体类

@Document为mongodb集合名

package com.example.springbootmongodb.domian; 
import org.springframework.data.mongodb.core.mapping.Document;
 
@Document(collection = "mydb")
public class Users {
  private String userId;
  private String name;
  private Integer age;
 
  public String getUserId() {
    return userId;
  }
 
  public void setUserId(String userId) {
    this.userId = userId;
  }
 
  public String getName() {
    return name;
  }
 
  public void setName(String name) {
    this.name = name;
  }
 
  public Integer getAge() {
    return age;
  }
 
  public void setAge(Integer age) {
    this.age = age;
  }
}

controller

package com.example.springbootmongodb.controller;
public class ResultObject {
 
  private int code;
 
  private String desc;
 
  private Object data;
 
  public ResultObject() {
 
  }
 
  public ResultObject(int code) {
    this.code = code;
  }
 
  public ResultObject(int code, Object data) {
    this.code = code;
    this.data = data;
  }
 
  public Object getData() {
    return data;
  }
 
  public void setData(Object data) {
    this.data = data;
  }
 
  public int getCode() {
    return code;
  }
 
  public void setCode(int code) {
    this.code = code;
  }
 
  public String getDesc() {
    return desc;
  }
 
  public void setDesc(String desc) {
    this.desc = desc;
  }
}
package com.example.springbootmongodb.controller;
 
import com.example.springbootmongodb.domian.Users;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.Update;
import org.springframework.web.bind.annotation.*;
 
import java.util.List;
 
@RequestMapping("/mongo")
@RestController
public class UserController {
 
  @Autowired
  private MongoTemplate mongoTemplate;
 
  @RequestMapping(value = "/hello",method = RequestMethod.GET)
  public String hello(){
    return "hello";
  }
 
  /**
   * 新增
   */
  @ResponseBody
  @RequestMapping(value = "/insert", method = RequestMethod.GET)
  public ResultObject insert(){
    Users user = new Users();
    user.setUserId("1002");
    user.setName("eric");
    user.setAge(18);
    mongoTemplate.insert(user);
  return new ResultObject(200);
  }
 
  /**删除
   *
   * @return
   */
  @ResponseBody
  @RequestMapping("/delete")
  public ResultObject delete(){
    Query query = Query.query(Criteria.where("userId").is("1001"));
    mongoTemplate.remove(query,"mydb");
    return new ResultObject(200);
  }
 
  /**
   * 删除
   * @return
   */
  @ResponseBody
  @RequestMapping("/update")
  public ResultObject update(){
    Query query = Query.query(Criteria.where("userId").is("1002"));
    Update update = new Update();
    update.set("name","name1");
    update.set("age",18);
    mongoTemplate.updateFirst(query,update,"mydb");
    return new ResultObject(200);
  }
 
  /**
   * 查询
   * @return
   */
  @ResponseBody
  @RequestMapping("/query")
  public ResultObject query(){
    Query query = Query.query(Criteria.where("userId").is("1001"));
    List<Users> list = mongoTemplate.find(query,Users.class);
    return new ResultObject(200,list);
  }
}

到此这篇关于spring boot集成mongodb的增删改查的示例代码的文章就介绍到这了,更多相关springboot mongodb增删改查内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringBoot本地磁盘映射问题

    SpringBoot本地磁盘映射问题

    这篇文章主要介绍了SpringBoot本地磁盘映射问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • Java编程实现打印螺旋矩阵实例代码

    Java编程实现打印螺旋矩阵实例代码

    这篇文章主要介绍了Java编程实现打印螺旋矩阵实例代码,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • java面试常见模式问题---代理模式

    java面试常见模式问题---代理模式

    代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息
    2021-06-06
  • SpringBoot返回json和xml的示例代码

    SpringBoot返回json和xml的示例代码

    本篇文章主要介绍了SpringBoot返回json和xml的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • springboot引用kettle实现对接oracle数据的示例代码

    springboot引用kettle实现对接oracle数据的示例代码

    这篇文章主要介绍了springboot引用kettle实现对接oracle数据,其实kettle集成到springboot里面没有多少代码,这个功能最主要的还是ktr文件的编写,只要ktr编写好了,放到指定文件夹下,写个定时任务就完事了,需要的朋友可以参考下
    2022-12-12
  • java项目中classpath的理解

    java项目中classpath的理解

    这篇文章介绍了java项目中classpath的理解,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-12-12
  • java数据结构基础:循环链表和栈

    java数据结构基础:循环链表和栈

    这篇文章主要介绍了Java数据结构之循环链表、栈的实现方法,结合实例形式分析了Java数据结构中循环链表、栈、的功能、定义及使用方法,需要的朋友可以参考下
    2021-08-08
  • Java中的CAS无锁机制实现原理详解

    Java中的CAS无锁机制实现原理详解

    这篇文章主要介绍了Java中的CAS无锁机制实现原理详解,无锁机制,是乐观锁的一种实现,并发情况下保证对共享变量值更改的原子性,CAS是Java中Unsafe类里面的方法,底层通过调用C语言接口,再通过cup硬件指令保证原子性,需要的朋友可以参考下
    2024-01-01
  • 在Java编程中定义方法

    在Java编程中定义方法

    这篇文章主要介绍了在Java编程中定义方法,是Java入门学习中的基础知识,需要的朋友可以参考下
    2015-10-10
  • javaweb设计中filter粗粒度权限控制代码示例

    javaweb设计中filter粗粒度权限控制代码示例

    这篇文章主要介绍了javaweb设计中filter粗粒度权限控制代码示例,小编觉得还是挺不错的,需要的朋友可以参考。
    2017-10-10

最新评论