springboot简单集成MongoDB 并使用Repository操作MongoDB数据库

  作者:记性不好的阁主

0.依赖


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



1、配置连接application.properties


spring.application.name=spring-boot-mongodb-repository

spring.data.mongodb.uri=mongodb://106.54.196.44:27017/test


2、实例





package com.neo.model;

public class User {
private Long id;
private String userName;
private String passWord;

public Long getId() {
return id;
}

public void setId(Long id) {
this.id = id;
}

public String getUserName() {
return userName;
}

public void setUserName(String userName) {
this.userName = userName;
}

public String getPassWord() {
return passWord;
}

public void setPassWord(String passWord) {
this.passWord = passWord;
}

@Override
public String toString() {
return "User{" +
"id=" + id +
", userName='" + userName + '\'' +
", passWord='" + passWord + '\'' +
'}';
}
}



3、Repository接口类




package com.neo.repository;

import com.neo.model.User;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.mongodb.repository.MongoRepository;

public interface UserRepository extends MongoRepository<User, Long> {
User findByUserName(String userName);
Page<User> findAll(Pageable var1);
}



findByUserNamefindAll为自定义查询方法


4、测试增删改查+分页


package com.neo.repository;

import com.neo.model.User;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.test.context.junit4.SpringRunner;


@RunWith(SpringRunner.class)
@SpringBootTest
public class RepositoryTest {

@Autowired
private UserRepository userRepository;

@Test
public void testSaveUser() throws Exception {
for (long i=0;i<100;i++) {
User user=new User();
user.setId(i);
user.setUserName("小明"+i);
user.setPassWord("fffooo123");
userRepository.save(user);
}
}

@Test
public void findUserByUserName(){
User user= userRepository.findByUserName("小明1");
System.out.println("user is "+user);
}

@Test
public void updateUser(){
User user=new User();
user.setId(2L);
user.setUserName("天空");
user.setPassWord("fffxxxx");
userRepository.save(user);
}

@Test
public void deleteUserById(){
userRepository.deleteById(2L);
}

@Test
public void testPage(){
Sort sort = new Sort(Sort.Direction.DESC, "id");
Pageable pageable = PageRequest.of(2, 10, sort);
Page page=userRepository.findAll(pageable);
System.out.println("users: "+page.getContent().toString());
}

}



相关推荐

评论 抢沙发

表情

分类选择