springboot项目集成MongoDB

mongodb-driver:monggoDB驱动包

mongo官方推出的java连接mongoDB的驱动包,相当于JDBC驱动。

1、引依赖

<dependency>
	<groupId>org.mongodb</groupId>
	<artifactId>mongodb-driver</artifactId>
	<version>3.10.1</version>
</dependency>

2、写代码(与原生JDBC连接一样)

//1.建立连接
MongoClient client = new MongoClient("192.168.10.101");
//2.打开数据库
MongoDatabase dossirdb = client.getDatabase("dossirdb");
//3.获取集合
MongoCollection<Document> user= dossirdb .getCollection("user");
//4.查询
FindIterable<Document> documents = user.find();
//5.打印
sout();
//6.关闭连接
 client.close();

3、增删改查(对user集合进行操作)

新增
Map<String, Object> map = new HashMap();
map.put("_id", "6");
map.put("name", "小强");
map.put("userid", "001");
map.put("age", 18);
Document document = new Document(map);
user.insertOne(document);

修改
Bson filter = new BasicDBObject("_id", "6");
Bson update = new BasicDBObject("$set", new Document("userid", "006"));
user.updateOne(filter, update);

删除
Bson filter = new BasicDBObject("_id", "6");
comment.deleteOne(filter);

查询
FindIterable<Document> documents = user.find();
FindIterable<Document> documents = user.find(new BasicDBObject("_id", "1"));

spring-boot项目

1、引依赖

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

2、修改配置文件

	spring:
		data:
			mongodb:
				database: dossirdb
				host: 127.0.0.1

3、创建user实体类

public class Comment implements Serializable {
					@Id
					private String _id;
					private String name;
					private String userid;
					private String age;
					//getter/setter
				}

4、创建userRepository接口

	public interface UserRepository extends MongoRepository<User, String> {
						}

5、写service,controller,同MySQL。

MongoTemplate中有很多方法,类似于RedisTemplate。

Spring Boot 3集成MongoDB是一个相对简单的过程。以下是一些基本步骤: 1. **添加依赖**: 在你的`pom.xml`文件中添加MongoDBSpring Boot Starter依赖: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency> ``` 2. **配置MongoDB连接**: 在`application.properties`或`application.yml`文件中配置MongoDB的连接信息: ```properties spring.data.mongodb.uri=mongodb://localhost:27017/your_database_name ``` 3. **创建实体类**: 创建一个与MongoDB集合对应的实体类,并使用`@Document`注解: ```java import org.springframework.data.annotation.Id; import org.springframework.data.mongodb.core.mapping.Document; @Document(collection = "users") public class User { @Id private String id; private String name; private String email; // Getters and Setters } ``` 4. **创建Repository接口**: 创建一个继承自`MongoRepository`的接口,用于数据访问: ```java import org.springframework.data.mongodb.repository.MongoRepository; import java.util.List; public interface UserRepository extends MongoRepository<User, String> { List<User> findByName(String name); } ``` 5. **创建服务类**: 创建一个服务类,用于处理业务逻辑: ```java import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @Service public class UserService { @Autowired private UserRepository userRepository; public List<User> getAllUsers() { return userRepository.findAll(); } public User getUserById(String id) { return userRepository.findById(id).orElse(null); } public User createUser(User user) { return userRepository.save(user); } public User updateUser(String id, User userDetails) { User user = userRepository.findById(id).orElse(null); if (user != null) { user.setName(userDetails.getName()); user.setEmail(userDetails.getEmail()); return userRepository.save(user); } return null; } public void deleteUser(String id) { userRepository.deleteById(id); } } ``` 6. **创建控制器类**: 创建一个控制器类,用于处理HTTP请求: ```java import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; @RestController @RequestMapping("/users") public class UserController { @Autowired private UserService userService; @GetMapping public List<User> getAllUsers() { return userService.getAllUsers(); } @GetMapping("/{id}") public User getUserById(@PathVariable String id) { return userService.getUserById(id); } @PostMapping public User createUser(@RequestBody User user) { return userService.createUser(user); } @PutMapping("/{id}") public User updateUser(@PathVariable String id, @RequestBody User userDetails) { return userService.updateUser(id, userDetails); } @DeleteMapping("/{id}") public void deleteUser(@PathVariable String id) { userService.deleteUser(id); } } ``` 通过以上步骤,你就可以在Spring Boot 3中成功集成MongoDB,并实现基本的CRUD操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值