美文网首页
10.跟我学SpringBoot-整合mongoDB

10.跟我学SpringBoot-整合mongoDB

作者: 孔垂云 | 来源:发表于2017-12-03 18:19 被阅读0次

    在学习这一节前,你需要了解什么是MongoDB,怎么安装,细节参看:
    4.1MongoDb介绍及java使用

    1.maven依赖

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

    2.application.yml配置

    #config Mongodb
    spring:
      data:
        mongodb:
          uri: mongodb://localhost:27017/test
    

    其中uri这个参数里面包含了三部分内容,ip、端口、数据库,localhost是ip,27017是端口,test是对应的数据库名
    如果需要用户名和密码,只需要mongodb://name:pass@localhost:27017/test,即可

    3.新建实体类Staff.java

    public class Staff {
        @Id
        private String id;
        private String name;//姓名
    // get set 省略
    }
    

    4. 数据处理类StaffRepository.java

    public interface  StaffRepository extends MongoRepository<Staff, String> {
        public Staff findByName(String name);
    }
    

    数据处理类和JPA很相似,继承MongoRepository完成多数操作。

    5.单元测试

    ···
    @RunWith(SpringRunner.class)
    @SpringBootTest
    public class TestMongodb {
    @Autowired
    private StaffRepository staffRepository;

    @Test
    public void test() {
        staffRepository.deleteAll();
        // save a couple of customers
        staffRepository.save(new Staff("张三"));
        staffRepository.save(new Staff("李四"));
    
        // fetch all customers
        System.out.println("查询所有数据:");
        System.out.println("-------------------------------");
        for (Staff staff : staffRepository.findAll()) {
            System.out.println(staff);
        }
        // fetch an individual customer
        System.out.println("按姓名查询");
        System.out.println("--------------------------------");
        System.out.println(staffRepository.findByName("张三"));
    
    }
    

    }
    ···
    测试结果:


    mongodb测试结果.png

    源码下载

    本例子详细源码

    相关文章

      网友评论

          本文标题:10.跟我学SpringBoot-整合mongoDB

          本文链接:https://www.haomeiwen.com/subject/dfgobxtx.html