下面我将为您详细讲解"Spring Boot中使用MongoDB数据库的方法"的完整攻略,并提供包含两条示例说明的演示代码。
在使用MongoDB数据库前,需要在pom.xml
文件中添加MongoDB的依赖项:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
在application.properties
文件中添加MongoDB数据库的链接配置:
#设置数据库链接配置
spring.data.mongodb.uri=mongodb://localhost:27017/dbName
#设置数据库名称
spring.data.mongodb.database=dbName
创建一个与数据库集合中的文档对应的实体类,实体类中包含需要存储的字段以及与之对应的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方法
}
创建继承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> {
}
根据需要进行增、删、改、查等操作,示例如下:
@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