環境
jdk1.8
maven
工具
idea
架構
springboot
(一)安裝MongoDB
可以參考本人寫的教程:http://chuichuige.iteye.com/admin/blogs/2401146
(二)使用idea 構建一個springboot工程
可以參考 http://blog.csdn.net/u013248535/article/details/55100979
(三)修改pom.xml文件
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency>
(四)在application.properties文件添加MongoDB 數據配置(這個地方得MongoDB配置好添加用戶)
注意點:在MongoDB數據庫配置完成後得添加用戶 root 密碼 root
添加方法可能由於下載的版本不一樣,方法也就不一樣
具體可以參考
http://chuichuige.iteye.com/blog/2401151
spring.data.mongodb.host=localhost spring.data.mongodb.port=27017 spring.data.mongodb.database=admin spring.data.mongodb.username=root spring.data.mongodb.password=root
(五)編寫數據庫Dao層代碼
注意點:findUserByUsername 千萬 別寫成 findUserByUserName ,如果寫成這樣會違反jpa 的規範,會報錯
參考:http://blog.csdn.net/u022812849/article/details/44277355
package mongodb.dao;
import mongodb.pojo.User;
import org.springframework.data.mongodb.repository.MongoRepository;
/**
* Created by pactera on 2017/11/26.
*/
public interface UserRepository extends MongoRepository<User,Long> {
User findUserByUsername(String username);
}
(六) 使用springboot 單元測試
package mongodb;
import mongodb.dao.UserRepository;
import mongodb.pojo.User;
import org.junit.Before;
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.test.context.junit4.SpringRunner;
import java.util.List;
/* Created by pactera on 2017/11/26.
*/
@RunWith(SpringRunner.class)
@SpringBootTest
public class AppTest {
@Autowired
private UserRepository userRepository;
// 刪除所有的數據
/* @Before
public void setUp(){
System.out.println(" --- 刪除所有數據 start ----- ");
userRepository.deleteAll();
System.out.println(" --- 刪除所有數據 end ----- ");
}*/
// 添加用戶測試
/*
@Test
public void test(){
// 添加用戶
userRepository.save(new User(1L,"lyf","123456"));
userRepository.save(new User(2L,"lyf2","1234567"));
userRepository.save(new User(3L,"lyf3","12345678"));
//刪除用戶
//userRepository.delete(1L);
System.out.println(userRepository.findAll().size());
}
*/
/**
* 查詢用戶測試
*//*
@Test
public void testQuery(){
List<User> users = userRepository.findAll();
for (User user:
users) {
System.out.println("-----");
System.out.println(user);
}
}
*/
/**
* 根據用戶名查詢用戶名稱
*
*/
@Test
public void testQueryfindUserByUsername(){
User user = userRepository.findUserByUsername("lyf");
System.out.println(user);
}
}
最終測試結果如下(這裏由於時間關係,本人在做完測試添加用戶後,再測試了根據用戶名稱查詢用戶),
測試結果如下
碼雲git源碼: https://gitee.com/chui0704/springboot
參考:http://blog.didispace.com/springbootmongodb/(由於和作者寫的有點出入,本人自己寫了一篇)