关于springboot:个人学习系列-Spring-Boot-整合-MongoDB-实现数据增删改查

MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中性能最丰盛,最像关系数据库的。

MongoDB装置

因为我是简略整合一下,所以是将MongoDB装置到windows中。

1. 官网下载安装包

进入下载页面后间接在左边就能够看到下载链接,选好本人要下载的版本平台点击下载即可。

2. 间接傻瓜式装置

2.1 选残缺装置,自定义装置大佬随便。

2.2 地址和装置形式抉择

2.3 可视化工具抉择

2.4 装置结束



3. 上手写代码

3.1 先用Navicat连贯上MongoDB


连贯上发现什么都没有,不必管,间接撸代码。

3.2 新建Spring Boot我的项目

这里不赘述如果用IDEA新建我的项目了哈。

3.2.1 pom.xml文件
<!-- web服务 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

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

<!-- lombok依赖 -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
</dependency>
3.2.2 application.yml文件
spring:
  data:
    mongodb:
      uri: mongodb://localhost:27017/test # mongodb连贯地址
3.2.3 User.java实体类
@Data
public class User implements Serializable {

    /**
     * id主键
     */
    private Integer id;

    /**
     * 用户名
     */
    private String name;

    /**
     * 年龄
     */
    private Integer age;

}
3.2.4 UserRepository.java MongoDB操作类

Spring Data Mongodb提供一套快捷操作 mongodb的办法,创立Dao,继承MongoRepository,并指定实体类型和主键类型。

public interface UserRepository extends MongoRepository<User, Integer> {

    /**
     * 依据姓名进行查问
     * @param name
     * @return
     */
    User findByName(String name);

    /**
     * 依据姓名进行含糊查问
     * @param name
     * @return
     */
    List<User> findByNameLike(String name);

}
3.2.5 UserController.java 管制层
@RestController
public class UserController {

    @Resource
    UserRepository userRepository;

    /**
     * 新增
     * @param user
     * @return
     */
    @PostMapping("/user")
    public User saveUser(@RequestBody User user){
        return userRepository.save(user);
    }

    /**
     * 删除
     * @param id
     */
    @DeleteMapping("/user")
    public void saveUser(Integer id){
        userRepository.deleteById(id);
    }

    /**
     * 批改
     * @param user
     */
    @PutMapping("/user")
    public void updateUser(@RequestBody User user){
        userRepository.save(user);
    }

    /**
     * 依据名字精准匹配
     * @param name
     * @return
     */
    @GetMapping("/userByName")
    public User userByName(String name){
        return userRepository.findByName(name);
    }

    /**
     * 依据名字含糊查问
     * @param name
     * @return
     */
    @GetMapping("/userList")
    public List<User> userList(String name){
        return userRepository.findByNameLike(name);
    }

}
3.2.6 运行测试

用postman调用接口进行测试
新增:


删除:


批改:
咱们先新增再批改


查问:
当初数据库只有一条名为批改的数据,所以进行查问

查问名为修的数据发现没有

进行含糊查问

其余简单的查问操作当前再钻研哈!

集体博客地址:

http://www.zhouzhaodong.xyz

源代码地址:

https://github.com/zhouzhaodo…

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理