POM.XML
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
application.properties
spring.data.mongodb.host=127.0.0.1
spring.data.mongodb.port=27017
spring.data.mongodb.database=mongodb
Controller
package com.controller;
import com.mongodb.client.result.UpdateResult;
import com.entity.User;
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.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
@RequestMapping("mongo")
public class MongoDBController {
@Autowired
private MongoTemplate mongoTemplate;
//MongoDB表名
private static final String collectionName = "user";
/**
* 插入
* @return
*/
@RequestMapping("insert")
public String insert(User user){
user.setName("cc");
user.setUserId(1+"");
user.setAge(1);
User insert = mongoTemplate.insert(user);
return insert.toString();
}
/**
* 删除
* @param userId
* @throws Exception
*/
@RequestMapping("delete")
public void delete(@RequestParam("userId") String userId){
Query query = Query.query(Criteria.where("userId").is(userId));//添加查询条件
this.mongoTemplate.remove(query, collectionName);
}
/**
* 更新
* @param user
*/
@RequestMapping("update")
public void update(User user){
Query query = Query.query(Criteria.where("userId").is(user.getUserId()));//添加查询条件
Update update = new Update();
update.set("age", user.getAge());
update.set("name", user.getName());
update.set("email", user.getEmail());
UpdateResult updateResult = this.mongoTemplate.updateFirst(query, update, collectionName);
System.out.println(updateResult.toString());
}
/**
* 查询
*/
@RequestMapping("query")
public void query(){
Query query = Query.query(Criteria.where("userId").is("1"));
List<User> users = this.mongoTemplate.find(query, User.class);
System.out.println(users);
}
}
User.java
public class User {
private String userId;
private String name;
private String email;
private Date birthday;
private int age;
public User() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "User{" +
"userId='" + userId + '\'' +
", name='" + name + '\'' +
", email='" + email + '\'' +
", birthday=" + birthday +
", age=" + age +
'}';
}
}