1、pom文件依赖需要的包
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
<version>2.0.5.RELEASE</version>
</dependency>
2、配置yml文件
# 数据源配置
spring:
data:
mongodb:
uri: mongodb://xxx.xxx.xxx.xxx:28001/physique
3、使用MongoTemplate进行操作数据库
实体类
package com.jndj.mongodbTest.domain;
import org.springframework.data.mongodb.core.mapping.Document;
@Document("phy_results")
public class MongodbModel {
private String _id;
private int student_id;
private int item_id;
private int levels;
private String results;
private int score;
private int grade;
private int points;
private String vision;
private String create_by;
private int add_time;
public String get_id() {
return _id;
}
public void set_id(String _id) {
this._id = _id;
}
public int getStudent_id() {
return student_id;
}
public void setStudent_id(int student_id) {
this.student_id = student_id;
}
public int getItem_id() {
return item_id;
}
public void setItem_id(int item_id) {
this.item_id = item_id;
}
public int getLevels() {
return levels;
}
public void setLevels(int levels) {
this.levels = levels;
}
public String getResults() {
return results;
}
public void setResults(String results) {
this.results = results;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
public int getGrade() {
return grade;
}
public void setGrade(int grade) {
this.grade = grade;
}
public int getPoints() {
return points;
}
public void setPoints(int points) {
this.points = points;
}
public String getVision() {
return vision;
}
public void setVision(String vision) {
this.vision = vision;
}
public String getCreate_by() {
return create_by;
}
public void setCreate_by(String create_by) {
this.create_by = create_by;
}
public int getAdd_time() {
return add_time;
}
public void setAdd_time(int add_time) {
this.add_time = add_time;
}
@Override
public String toString() {
return "MongodbModel{" +
"_id=" + _id +
", student_id='" + student_id + '\'' +
", item_id='" + item_id + '\'' +
", levels='" + levels + '\'' +
", results='" + results + '\'' +
", score='" + score + '\'' +
", grade='" + grade + '\'' +
", points='" + points + '\'' +
", vision='" + vision + '\'' +
", create_by='" + create_by + '\'' +
", add_time='" + add_time + '\'' +
'}';
}
}
操作服务类
package com.jndj.mongodbTest.service.impl;
import com.jndj.mongodbTest.domain.MongodbModel;
import com.jndj.mongodbTest.service.IMongodbService;
import com.mongodb.client.result.DeleteResult;
import com.mongodb.client.result.UpdateResult;
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.stereotype.Service;
import java.util.List;
/**
* 【mongodb操作功能Demo】Service业务层处理
*
* @author yaohj
* @date 2020-09-17
*/
@Service
public class MongodbServiceImpl implements IMongodbService
{
@Autowired
private MongoTemplate mongoTemplate;
/**
* 查询【检索所有数据】
*
* @param student_id 【学生id】
* @param item_id 【项目id】
* @return 【单条数据】
*/
@Override
public List<MongodbModel> selectMongodbById(int student_id, int item_id)
{
Query query = new Query(Criteria.where("student_id").is(student_id).and("item_id").is(item_id));
return mongoTemplate.find(query, MongodbModel.class);
}
/**
* 查询【所有数据】列表
*
* @return 【所有数据】集合
*/
@Override
public List<MongodbModel> selectAllMongodb()
{
return mongoTemplate.findAll(MongodbModel.class);
}
/**
* 新增【mongodb数据】
*
* @return 结果
*/
@Override
public MongodbModel insertMongodb()
{
MongodbModel mongodbModel = new MongodbModel();
mongodbModel.setStudent_id(10000001);
mongodbModel.setItem_id(30000001);
mongodbModel.setLevels(2020);
mongodbModel.setResults("9.8S");
mongodbModel.setScore(65);
mongodbModel.setGrade(3);
mongodbModel.setPoints(5);
mongodbModel.setVision("{\n" +
"\t\t\"a\" : 123,\n" +
"\t\t\"b\" : 456,\n" +
"\t\t\"c\" : 789\n" +
"\t}");
mongodbModel.setCreate_by("李俊华");
mongodbModel.setAdd_time(1600308169);
return mongoTemplate.insert(mongodbModel);
}
/**
* 修改【mongodb数据】
*
* @return 结果
*/
@Override
public UpdateResult updateMongodb()
{
Query query = new Query(Criteria.where("student_id").is(10000001).and("item_id").is(20000001));
Update update = Update.update("grade", 3);
return mongoTemplate.updateFirst(query, update, MongodbModel.class);
}
/**
* 删除【mongodb数据】信息
*
* @param student_id 【学生id】
* @param item_id 【项目id】
* @return 结果
*/
@Override
public DeleteResult deleteMongodb(int student_id, int item_id)
{
Query query = new Query(Criteria.where("student_id").is(student_id).and("item_id").is(item_id));
return mongoTemplate.remove(query, MongodbModel.class);
}
}
4、mongodb数据库