环境
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/(由于和作者写的有点出入,本人自己写了一篇)