关键词

Spring Boot中使用MongoDB数据库的方法

下面我将为您详细讲解"Spring Boot中使用MongoDB数据库的方法"的完整攻略,并提供包含两条示例说明的演示代码。

1. 引入所需依赖

在使用MongoDB数据库前,需要在pom.xml文件中添加MongoDB的依赖项:

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

2. 进行数据库配置

application.properties文件中添加MongoDB数据库的链接配置:

#设置数据库链接配置
spring.data.mongodb.uri=mongodb://localhost:27017/dbName
#设置数据库名称
spring.data.mongodb.database=dbName

3. 创建实体类

创建一个与数据库集合中的文档对应的实体类,实体类中包含需要存储的字段以及与之对应的get、set方法,例如:

package com.example.demo.entity;

import org.springframework.data.mongodb.core.mapping.Document;

@Document(collection = "test")  //设置实体类与数据库集合相对应
public class TestEntity {

    //设置文档属性
    private String id;
    private String name;
    private int age;

    //省略get、set方法

}

4. 创建DAO接口

创建继承MongoRepository接口的DAO层接口,该接口将承担与MongoDB数据库进行交互的任务,例如:

package com.example.demo.dao;

import com.example.demo.entity.TestEntity;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface TestDao extends MongoRepository<TestEntity, String> {

}

5. 使用MongoRepository进行CRUD操作

根据需要进行增、删、改、查等操作,示例如下:

增加数据

@Autowired
private TestDao testDao;

@Test
public void testInsert() {
    TestEntity testEntity = new TestEntity();
    testEntity.setName("张三");
    testEntity.setAge(20);
    testDao.save(testEntity);
}

查询数据

@Test
public void testQuery() {
    List<TestEntity> list = testDao.findAll();
    for (TestEntity entity : list) {
        System.out.println(entity.toString());
    }
}

示例代码

以下是一个简单的Spring Boot项目的完整示例代码,其中包含对MongoDB的连接与数据增删查操作的实现:

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

}

package com.example.demo.controller;

import com.example.demo.dao.TestDao;
import com.example.demo.entity.TestEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/test")
public class TestController {

    @Autowired
    private TestDao testDao;

    @PostMapping("/insert")
    public String insert() {
        TestEntity testEntity = new TestEntity();
        testEntity.setName("张三");
        testEntity.setAge(20);
        testDao.save(testEntity);
        return "OK";
    }

    @GetMapping("/query")
    public List<TestEntity> query() {
        return testDao.findAll();
    }

}

利用该示例代码,您可以快速地实现Spring Boot与MongoDB的连接,以及常见的数据增删查操作。

本文链接:http://task.lmcjl.com/news/18677.html

展开阅读全文