springboot集成mongodb操作

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数据库
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值