MongoDB(五)——MongoRepository操作MongoDB


MongoRepository操作MongoDB

環境搭建

添加Repository類

@Repository
public interface UserRepository extends MongoRepository<User, String> {

}

添加操作

package com.study;

import com.study.mongodb.entiity.User;
import com.study.mongodb.repository.UserRepository;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
class SpringbootMongoDbApplicationTest1 {
    @Autowired
    private UserRepository userRepository;

    //添加操作
    @Test
    void create(){
        User user = new User();
        user.setAge(20);
        user.setName("zhangsan");
        user.setEmail("963330213@qq.com");
        User user1 = userRepository.save(user);
        System.out.println(user1);
    }
}

image

查詢操作

1.查詢所有

 //查詢所有
    @Test
    void findAll(){
        List<User> userList = userRepository.findAll();
        System.out.println(userList);
    }

image
2.根據id查詢

    //根據id查詢
    @Test
    void findById(){
        User user = userRepository.findById("611a2f1f5e7124132f365fa7").get();
        System.out.println(user);
    }

image

3.條件查詢

    //條件查詢
    @Test
    void findUserList(){
        //name = zhangsan and age = 20
        User user = new User();
        user.setName("zhangsan");
        user.setAge(20);
        Example<User> userExample = Example.of(user);
        List<User> users = userRepository.findAll(userExample);
        System.out.println(users);
    }

image

4.模糊查詢

    //模糊查詢
    @Test
    void findLikeUserList(){
        //設置模糊查詢匹配規則
        ExampleMatcher matcher = ExampleMatcher.matching()
                .withStringMatcher(ExampleMatcher.StringMatcher.CONTAINING)
                .withIgnoreCase(true);//忽略大小寫
        User user = new User();
        user.setName("z"); //包含z的數據
        Example<User> userExample = Example.of(user,matcher);
        List<User> users = userRepository.findAll(userExample);
        System.out.println(users);
    }

image

5.分頁查詢

    //分頁查詢
    @Test
    void findPageUserList(){
        //分頁
        Pageable pageable = PageRequest.of(0, 3);//0代表第一頁,3顯示3個字段
        User user = new User();
        user.setName("zhangsan");
        Example<User> userExample = Example.of(user);
        Page<User> page = userRepository.findAll(userExample, pageable);
        System.out.println(page);
    }

修改操作

    //修改操作
    @Test
    void updateUser(){
        User user = userRepository.findById("611a2f1f5e7124132f365fa7").get();
        user.setAge(18);
        user.setName("lisi");
        User save = userRepository.save(user); //有id則修改,無id則變成添加操作
        System.out.println(save);
    }

image

刪除操作

 //刪除操作
    @Test
    void deleteUser(){
        userRepository.deleteById("611a2f1f5e7124132f365fa7");
    }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM