idea+springboot+mongodb的简单测试使用分享

1,先去官网下载,选择版本,选择Windows,就可以点击下载了。
在这里插入图片描述
2,安装mongodb。
在这里插入图片描述
在这里插入图片描述
下一步安装 “install mongoDB compass” 不勾选(当然你也可以选择安装它,可能需要更久的安装时间),MongoDB Compass 是一个图形界面管理工具,我们可以在后面自己到官网下载安装,下载地址:https://www.mongodb.com/download-center/compass。
在这里插入图片描述
3,使用idea创建一个springboot项目,在选择依赖的时候导入Mongodb的依赖
在这里插入图片描述
4,修改application.yml文件
在这里插入图片描述
5,创建实体类,service以及serviceImpl.
实体类:(@Getter @Setter @ToString这些注解是lombok的,主要是用来生成setter getter 方法,大家应该知道吧,不知道的就别用注解,手动生成setter ,getter方法)
在这里插入图片描述

service:

public interface UserService {public void saveUser(User user);public User findUserByUserName(String userName);public long updateUser(User user);public void deleteUserById(Integer id);public List<User> queryList();
}

serviceImpl:

package com.example.mongodemo.repository.impl;import com.example.mongodemo.entity.User;
import com.example.mongodemo.repository.UserService;
import com.mongodb.client.result.UpdateResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.Update;
import org.springframework.stereotype.Component;import java.util.List;@Component
public class UserServiceImpl implements UserService {@Autowiredprivate MongoTemplate mongoTemplate;/*** 创建对象* @param user*/@Overridepublic void saveUser(User user) {mongoTemplate.save(user);}/*** 根据用户名查询对象* @param userName* @return*/@Overridepublic User findUserByUserName(String userName) {Query query = new Query(Criteria.where("userName").is(userName));User user = mongoTemplate.findOne(query,User.class);return user;}/*** 更新对象* @param user*/@Overridepublic long updateUser(User user) {Query query = new Query(Criteria.where("id").is(user.getId()));Update update = new Update().set("userName",user.getUserName()).set("createTime",user.getCreateTime());//更新查询返回结果集的第一条UpdateResult result =mongoTemplate.updateFirst(query,update,User.class);if(result!=null)return result.getMatchedCount();elsereturn 0;}/*** 删除对象* @param id*/@Overridepublic void deleteUserById(Integer id) {Query query=new Query(Criteria.where("id").is(id));mongoTemplate.remove(query,User.class);}/*** 查询所有的用户信息* @return*/@Overridepublic List<User> queryList() {Query query=new Query();List<User> userList = mongoTemplate.findAll(User.class);return userList;}
}

6,写好这些我们要在测试类里面测试一下

@Autowiredprivate UserService userDao;@Testpublic void testSaveUser() throws Exception {User user=new User();user.setId(2);user.setUserName("小明");user.setCreateTime(new Date());userDao.saveUser(user);}@Testpublic void findUserByUserName(){User user= userDao.findUserByUserName("小明");System.out.println("user is "+user);}@Testpublic void updateUser(){User user=new User();user.setId(9);user.setUserName("天空");user.setCreateTime(new Date());userDao.updateUser(user);}@Testpublic void deleteUserById(){userDao.deleteUserById(9);}@Testpublic void queryList(){List<User> userList = userDao.queryList();for(User user:userList){System.out.println(user.getUserName());}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/570421.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

project01

the question 最早时间出发为第一架航班&#xff0c;接下来第二架要求&#xff1a;到达日期与第一架航班的出发日期的时间间隔不小于45分钟&#xff0c;且序号最小依次类推将所有航班排完the data the transmission of the data import numpy as np import pandas as pd from p…

idea+springboot+mongodb的实战使用分享

昨天的时候我们先在网上找了测试类&#xff0c;测试了一下mongdb的简单使用&#xff0c;今天就来实地在项目中用一用 没安装mongodb的参考我上一篇文章&#xff1a;ideaspringbootmongodb的简单测试使用分享 其实我们初学者最好是安装一个可视化的工具&#xff0c;这样方便我…

Nginx整合tomcat,实现反向代理和负载均衡

1.Nginx与Tomcat整合,通过Nginx反向代理Tomcat。 Nginx安装路径为&#xff1a;/usr/local//nginx 首先切换路径到&#xff1a;/usr/local//nginx/conf通过命令 vim/usr/local//nginx/conf/nginx.conf打开配置文件 修改Nginx配置文件&#xff1a;/usr/local//nginx/conf/nginx.…

Django REST Framework API Guide 07

本节大纲 1、Permissions 2、Throttling Permissions 权限是用来授权或者拒绝用户访问API的不同部分的不同的类的。基础的权限划分 1、IsAuthenticated 允许任何通过认证的用户访问&#xff0c;拒绝任何没有通过认证的用户。2、IsAuthenticatedOrReadOnly 认证通过的用户有所有…

ElasticSearch Java SpringBoot根据时间范围分组求和

需求是这样的&#xff1a; 近7天的用户登陆统计&#xff0c;根据日期来返回的要是data:[{date&#xff1a;“2021-04-01”,count:“1”}] Autowired private ElasticsearchTemplate elasticsearchTemplate;SimpleDateFormat formater new SimpleDateFormat("yyyy-MM-dd&…

开发springboot项目,遇到的一些问题总结

首先看一下我的项目目录吧 1&#xff0c;添加拦截器 我们做项目肯定要用到拦截器这个功能哈&#xff0c;没登录的话一些页面我们是不能访问的哈&#xff0c;这里是用到了HandlerInterceptor。 分别在图中的位置创建2个目录和2个文件&#xff1a; WebConfig: import org.sp…

elasticsearch根据时间范围查询总条数

根据创建时间来查询总条数 Autowired private ElasticsearchTemplate elasticsearchTemplate;String morning "2021-06-01"; String times "2021-06-02"; BoolQueryBuilder bqb QueryBuilders.boolQuery(); bqb.must(QueryBuilders.rangeQuery("cr…

利用tushare进行对兴业银行股价的爬取,并使用numpy进行分析

import sysimport tushare as tsimport numpy as npdatats.get_h_data(601066)print(data)#读出兴业银行7列数据date open high close low volume amount data.to_csv(E:/csv statistic/day/601066.csv) 把读取的股票数据存入某个内存空间中 #开始读某…

elasticsearch根据某个字段来查询,以及通过时间筛选

elasticsearch根据某个字段来查询&#xff0c;以及通过时间筛选 String startTime "2021-06-01"; String endTime "2021-06-02"; BoolQueryBuilder bqb QueryBuilders.boolQuery(); bqb.must(QueryBuilders.matchPhraseQuery("userId",userSt…

centOS下lnamp安装

首先安装apache,mysql ,最后安装php 1>apache安装 安装&#xff1a;yum install -y httpd 运行&#xff1a;/bin/systemctl start httpd.service 执行完运行命令之后是看不到效果的&#xff0c;这时候再输入查看apache服务状态命令来查看服务是否已经启动&#xff1a; 查看状…

java使用itext填充pdf模板,超简单教学,有手就行

java使用itext填充pdf模板1、先去建一个Word文件&#xff0c;设置好想要填充的地方&#xff0c;留好位置&#xff0c;设置好下划线2、将Word另存为pdf3、打开电脑中的Adobe Acrobat pro DC&#xff08;这个应该win10 都有&#xff0c;搜索一下就出来了&#xff09;&#xff0c;…

java使用itext将图片放到pdf模板的指定位置

java使用itext将图片放到pdf模板的指定位置前面的准备步骤可以参考我的上一篇文章这里直接上代码这里用的图片是路径的形式&#xff0c;还有种情况是图片是base64的时候&#xff0c;这种情况就需要转一下图片格式了&#xff0c;具体代码如下&#xff1a;前面的准备步骤可以参考…

KVM使用

这里使用的是Ubuntu18.04桌面版虚拟机 关于KVM可以看一下我之前的博客,有一些简单的介绍。 1.在打开虚拟机之前先开启此虚拟机的虚拟化功能。 2.安装KVM及其依赖项 wywy-virtual-machine:~$ sudo apt install qemu qemu-kvm libvirt-bin bridge-utils virt-manager 3.安装完成…

mybatis-plus3.5.1学习笔记

1、ID 1>id策略有6种&#xff1a; 想要id自增就在id上面添加 TableId(type IdType.AUTO)mybaits-plus的默认的主键策略是&#xff1a; TableId(type IdType.ID_WORKER)这样生成的是19位的数字id。 有的人喜欢使用UUID&#xff1a; TableId(type IdType.UUID)2、cre…

Python网络编程之socket编程

什么是Socket&#xff1f; Socket是应用层与TCP/IP协议族通信的中间软件抽象层&#xff0c;它是一组接口。在设计模式中&#xff0c;Socket其实就是一个门面模式&#xff0c;它把复杂的TCP/IP协议族隐藏在Socket接口后面&#xff0c;对用户来说&#xff0c;一组简单的接口就是全…

idea必装插件

1、lombok 这个是自动生成getter,setter的插件工具&#xff0c;现在idea已经集成了&#xff0c;好像不用单独去插件市场下载。 2、Free MyBatis Tool 官方话术&#xff1a; Free MyBatis Tool 是一款增强idea对mybatis支持的插件 主要功能如下&#xff1a; 生成mapper xml文…

mongodb查询分页优化

mongodb查询分页优化 转自&#xff1a;https://blog.csdn.net/chunqiuwei/article/details/11669885项目中需要用mongodb来进行数据测存储和查询,其中涉及到分页:分页的要求如下 1)每页显示10条 由于数据量太大,cursor.count()获取的符合条件的数据量也很大,导致分页得分好几万…

Contest Hunter 0103最短Hamilton路径 【状压dp】 By cellur925

题目传送门 Hamilton路径的定义&#xff1a;从0&#xff08;起点&#xff09;到n-1&#xff08;终点&#xff09;不重不漏地经过每个点恰好一次。 由于数据范围非常小&#xff0c;考虑状压。如NOIP2017宝藏一题&#xff0c;把状态压缩设为n个点是否已到达的二进制数。1表示到达…

Failed to execute operation: No such file or directory解决办法

在给Linux服务器安装docker的时候报错解决办法&#xff1a;1&#xff0c;在/etc/systemd/system/目录下创建docker.service2&#xff0c;进入docker.service文件3&#xff0c;将下面的代码复制进去4&#xff0c;复制进去以后&#xff0c;按Esc&#xff0c;在输入&#xff1a;wq…

The goal you specified requires a project to execute but there is no POM in this directory

使用maven安装jar包到本地仓库时遇到The goal you specified requires a project to execute but there is no POM in this directory我的命令是 mvn install:install-file -DfileD:\cao\gofastdfs-2.0.jar -DgroupIdcom.aaa-DartifactIdgofastdfs -Dversion2.0 找遍了百度才…