ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Spring Boot整合MongoDB

2021-04-17 11:58:51  阅读:193  来源: 互联网

标签:name author Book Spring Boot add books MongoDB id


一、安装教程

http://www.macrozheng.com/#/architect/mall_arch_08
注意:
安装为服务时,需要以管理员的身份运行。
在这里插入图片描述

执行命令如下命令:需进入安装目录的bin文件夹中
在这里插入图片描述

服务相关命令

#启动服务:
net start MongoDB
#关闭服务:
net stop MongoDB
#移除服务:
D:\MongoDB\bin\mongod.exe --remove

二、整合步骤

1、导入maven依赖

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

2、配置参数

spring.data.mongodb.database=test
spring.data.mongodb.host=127.0.0.1
spring.data.mongodb.port=27017

3、编写实体类以及DAO

实体类

@Data
@Builder
public class Book {
    private Integer id;
    private String name;
    private String author;
}

DAO实体类

/**
 * @Describe: 动态代理生成
 * @Author: youjiancheng
 * @date 2021/4/8 22:08
 */
public interface BookDao extends MongoRepository<Book,Integer> {

    List<Book> findByAuthorContains(String author);

    Book findByNameEquals(String name);
}

4、测试

@RestController
public class BookController {

    @Autowired
    BookDao bookDao;

    @GetMapping("/test1")
    public void test1() {
        List<Book> books = new ArrayList<>();
        Book book1 = Book.builder().id(1).author("zs").name("java").build();
        Book book2 = Book.builder().id(2).author("lisi").name("web").build();
        Book book3 = Book.builder().id(3).author("ww").name("MySQL").build();
        books.add(book1);
        books.add(book2);
        books.add(book3);
        bookDao.insert(books);

        //查询
        List<Book> res1 = bookDao.findByAuthorContains("zs");
        System.out.println(res1);
        System.out.println("----------------------------");
        Book res2 = bookDao.findByNameEquals("java");
        System.out.println(res2);

    }
}

结果:
在这里插入图片描述

在这里插入图片描述

此外,Spring Data MongoDB还提供了一个MongoTemplate来操作MongoDB。

@GetMapping("/test2")
public void test2() {
    List<Book> books = new ArrayList<>();
    Book book1 = Book.builder().id(4).author("zs4").name("java1").build();
    Book book2 = Book.builder().id(5).author("lisi5").name("web1").build();
    Book book3 = Book.builder().id(6).author("ww26").name("MySQL1").build();
    books.add(book1);
    books.add(book2);
    books.add(book3);
    mongoTemplate.insertAll(books);

    List<Book> all = mongoTemplate.findAll(Book.class);
    System.out.println(all);
    Book byId = mongoTemplate.findById(4, Book.class);
    System.out.println(byId);
}

结果如下:
在这里插入图片描述
在这里插入图片描述

标签:name,author,Book,Spring,Boot,add,books,MongoDB,id
来源: https://blog.csdn.net/qq_42219004/article/details/115792543

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有