windows安装Redis,Mongo,ES并快速基本掌握开发流程

前言

这里只是一些安装后的基础操作,后期会学习更加深入的操作

基础操作

  • 前言
  • Redis
    • Redis启动
    • idea集成Redis
    • jedis技术
  • Mongodb
    • windows版Mongodb的安装
    • idea整合Mongodb
  • ES(Elasticsearch)
    • ESwindows下载
    • ES文档操作
    • idea整合ES
      • 低级别ES整合
      • 高级别ES整合

Redis

Redis是一款基于Key-value存储结构的内存级NoSQL数据库
特点:

  1. 支持多种数据存储格式
  2. 支持持久化
  3. 支持集群

首先下载windows版本的Redis
下载地址:https://github.com/tporadowski/redis/releases
安装完成之后进行启动

Redis启动

服务端启动命令:

redis-server.exe redis.windows.conf

客户端启动命令:

redis-cli.exe	

在这里插入图片描述
输入完成后会出现问题,这时windows版本下的一个bug
这里先输入:
在这里插入图片描述
输入完成后再次输入上述操作:
在这里插入图片描述
启动成功,在其中设置key-value并查询key-value
在这里插入图片描述
还可以将多个key-value写入到一个key中

idea集成Redis

在这里插入图片描述
在idea集成了Redis之后,需要告知idea使用的Redis的地址才行,这就需要在配置文件中进行配置

spring:data:redis:host: localhostport: 6379

在操作是通过接口对象Redistemplate进行操作
操作之前需要通过ops*获取各种数据类型操作接口

    @Autowiredprivate RedisTemplate redisTemplate;@Testvoid set() {//因为Redis支持多种存储结构,所以需要先指定Redis的存储结构ValueOperations ops = redisTemplate.opsForValue();ops.set("age",2);}@Testvoid get(){ValueOperations ops = redisTemplate.opsForValue();ops.get("age");}@Testvoid hset(){HashOperations hashOperations = redisTemplate.opsForHash();hashOperations.put("nihao","a","aa");}@Testvoid hget(){HashOperations hashOperations = redisTemplate.opsForHash();Object o = hashOperations.get("nihao", "a");}

注意:操作Redis的客户端可以使用redisTemplate和StringRedisTemplate两个接口,但是redisTemplate是以对象的形式范围数据,而stringRedisTemplate是以字符串的形式返回数据
客户端:StringRedisTemplate以字符串作为key和value,与Redis客户端操作等效

jedis技术

一般系统默认使用的是lettuce技术,如果要使用jedis技术需要引入依赖:

        <dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId></dependency>

需要在配置文件中对client的类型进行配置

client-type: jedis

lettcus与jedis区别:

  1. jdis连接Redis服务器是直连模式,当多线程模式下使用jedis会存在线程安全问题,解决方案可以通过配置连接池使每个连接专用,这样整体性能就大受影响
  2. lettcus基于Netty框架进行与Redis服务器连接,底层设计中采用StatefulRedisConnection,它自身是线程安全的,可以保障并发访问安全问题,所以一个连接可以被多线程复用,当然lettcus也支持多连接实例一起工作

Mongodb

Mongodb是一个开源,高性能,无模式的文档型数据库。NoSQL数据库产品中的一种,是最像关系型数据库的非关系型数据库

使用场景:
像比如说在直播数据的处理中,有部分数据变化的速度非常的快,这部分数据就不适合在数据库中进行操作,应该临时存储,所以用到永久性存储和临时存储相结合,修改频度极高
还有比如停车场的状态信息这些变化频度高的临时数据都可以在Mongodb中进行存储

windows版Mongodb的安装

下载地址:https://www.mongodb.com/try/download
windows版Mongo启动:
服务端启动:

mongod --dbpath=..\data\db

客户端启动:

mongo --host=127.0.0.1 --port=27017

启动的是服务端,进行数据库的初始化
在这里插入图片描述
启动客户端
在这里插入图片描述
当在下载过程中出现如下问题:
在这里插入图片描述
可以通过如下步骤进行解决:

  1. 下载对应的dll文件(通过互联网搜索即可)
  2. 拷贝到windows安装路径下的system32目录中
  3. 执行命令注册对应的dll文件
regsvr32 vcruntime140_1.dll
  • Mongodb的基础操作
    在这里插入图片描述
  • 基础查询

基础查询

  • 条件查询
    在这里插入图片描述

idea整合Mongodb

创建项目:
创建项目
在配置文件中进行配置

spring:data:mongodb:uri: mongodb://localhost/库名

在测试类中进行测试:

@Autowired
private MongoTemplate mongotemplate;
//使用对象进行对应的操作

ES(Elasticsearch)

Elasticsearch是一个分布式全文搜索引擎

将数据库中的数据进行分词,通过个别词进行查询,查询出对应的id,将与之匹配的部分信息保存到文档之中,加速查询的效率

ESwindows下载

下载地址:https://www.elastic.co/cn/downloads/elasticsearch

  • 启动

运行 elasticsearch.bat

ik分词器下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
将分词器的压缩包粘贴到plugins目录下进行解压并重新启动ES

  • ES基本操作
    ES操作
    创建索引并指定规则:
    在这里插入图片描述

ES文档操作

  • 创建文档
    在这里插入图片描述
    在这里插入图片描述
  • 查询文档
    在这里插入图片描述
  • 条件查询

在这里插入图片描述

  • 删除文档
    在这里插入图片描述
  • 修改文档(全量修改)
    在这里插入图片描述
  • 修改文档(部分修改)
    在这里插入图片描述

idea整合ES

低级别ES整合

导入坐标依赖:

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

再通过配置文件进行配置:

spring:elasticsearch:rest:uris: http://localhost:9200

进行相应的操作:

@Autowired
private ElasticsearRestTemplate template;

高级别ES整合

随着ES版本的不断更新迭代,推出高级别操作
导入依赖:

        <dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId></dependency>

需要手动创建客户端

private RestHighLevelClient client;
@Test
void test()throws IOExption{
HttpHost host=HttpHost.create("http://localhost:9200");
RestClientBuilder builder=RestClient.builder(host);
client=new RestHighLevelClient(builder);
//客户端操作
CreateIndexRequest request=new CreateIndexRequest("books");
//获取操作索引的客户端对象,调用创建索引操作
client.indices().create(request,RequestOptions.DEFAULT);
client.close();
}

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

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

相关文章

深入理解JVM后端优化技术-方法内联

相关系列 深入理解JVM后端优化技术-逃逸分析(Escape Analysis)-CSDN博客 深入理解JVM后端优化技术-锁消除&#xff08;Lock Elision)-CSDN博客 深入理解JVM后端优化技术-锁粗化(Lock Coarsening)-CSDN博客 jvm只是负责依次将字节码指令逐次转换成机器码。而在转换过程中&#x…

计算机网络----第五天

广域网基本原理 局域网问题&#xff1a; 问题&#xff1a;以太网等局域网技术无法支持远程传输 广域网目的&#xff1a; 目的&#xff1a;基于电信运营商的通信网络设施建立远程连接 在相聚遥远的局域网之间建设连接性 广域网连接方式&#xff1a; 方式&#xff1a;电路交…

【THM】Net Sec Challenge(网络安全挑战)-初级渗透测试

介绍 使用此挑战来测试您对网络安全模块中获得的技能的掌握程度。此挑战中的所有问题都可以仅使用nmap、telnet和来解决hydra。 挑战问题 您可以使用Nmap、 Telnet 和Hydra回答以下问题。 2.1小于10000的最大开放端口号是多少? 8080 nmap -p- -T4 10.10.234.218 2.2普通…

gurobi不同版本切换

每年年底&#xff0c;gurobi都会推出新版本。新版本是大的迭代更新&#xff0c;求解问题的效率和精度都会提升。官方人员一般会建议我们安装最新的版本&#xff0c;此外&#xff0c;写论文审稿专家也会建议我们使用较新的版本。 从我们现装的版本切换到新版本。我以往的做法是…

App测试收集总结

Monkey monkey是安卓的命令行工具&#xff0c;可以运行在虚拟机或者实际设备中。 monkey的目的就是为了测试app的稳定性&#xff0c;看App是否会崩溃 monkey的特点:只能对程序包进行测试&#xff0c;无法对源码进行测试&#xff1b;moneky的事件数据流是随机的&#xff0c;无法…

接口自动化测试利器,使用Rest Assured进行REST API测试

我们在做接口测试时&#xff0c;一般在代码中会使用HttpClient&#xff0c;但是HttpClient相对来讲还是比较麻烦的&#xff0c;代码量也相对较多&#xff0c;对于新手而言上手会比较难一点&#xff0c;今天我们来看下另一个接口测试工具包REST Assured REST Assured是一个流行…

麒麟V10安装Redis6.2.6

1、下载redis安装包 Redis各版本下载&#xff1a;https://download.redis.io/releases/ 2、将下载后的.tar.gz压缩包上传到到服务器自定义文件夹下 3、 解压文件 tar -zxvf redis-6.2.6.tar.gzmv redis-6.2.6 redis4、安装redis 在redis文件夹下输入make指令 cd /opt/redi…

MoCo 算法阅读记录

论文地址&#xff1a;&#x1f430; 何凯明大神之作&#xff0c;通过无监督对比学习预训练Image Encoder的表征能力。后也被许多VLP算法作为ITC的底层算法来使用。 一方面由于源代码本身并不复杂&#xff0c;但是要求多GPU分布式训练&#xff0c;以及需要下载ImageNet这个大规模…

Ubuntu 20.04.06 PCL C++学习记录(二十一)【切记使用rm * -rf前先确认是否是对应文件夹】

[TOC]PCL中点云分割模块的学习 学习背景 参考书籍&#xff1a;《点云库PCL从入门到精通》以及官方代码PCL官方代码链接,&#xff0c;PCL版本为1.10.0&#xff0c;CMake版本为3.16&#xff0c;测试点云下载地址 学习内容 根据欧几里得距离和需要保持的用户可自定义条件对点进…

在服务器部署MySQL

在服务器opt 新建文件夹 mysql/data&#xff0c;新建文件 mysql/conf.d/my.cnf 其中my.cnf 内容如下 [mysqld] log_timestampsSYSTEM default-time-zone8:00server-id1log-binmysql-binbinlog-do-db mall # 要监听的库binlog_formatROW 配置解读&#xff1a; ① server-id &…

【分析 GClog 的吞吐量和停顿时间、heapdump 内存泄漏分析】

文章目录 &#x1f50a;博主介绍&#x1f964;本文内容GClog分析以优化吞吐量和停顿时间步骤1: 收集GClog步骤2: 分析GClog步骤3: 优化建议步骤4: 实施优化 Heapdump内存泄漏分析步骤1: 获取Heapdump步骤2: 分析Heapdump步骤3: 定位泄漏对象步骤4: 分析泄漏原因步骤5: 修复泄漏…

2024.4.3力扣每日一题——找出克隆二叉树中的相同节点

2024.4.3 题目来源我的题解方法一 深度优先搜索方法二 广度优先遍历 题目来源 力扣每日一题&#xff1b;题序&#xff1a;1379 我的题解 方法一 深度优先搜索 同时对二叉树 original 与 cloned 进行深度优先搜索&#xff0c;如果 original当前搜索的节点的引用等于 target 节…

预训练的启蒙:浅谈BERT、RoBERTa、ALBERT、T5

文章目录 Transformer揭开预训练序幕为什么RNN/LSTM需要从头训练&#xff1f; BERT核心特点预训练任务架构应用和影响 RoBERTa改进点BERT和RoBERTa的MASK策略对比BERT的静态MASK策略RoBERTa的动态MASK策略效果 总结 ALBERT改进点参数共享因式分解嵌入参数和LoRa对比 总结 T5核心…

Electron打包vue+java+nginx 踩坑记录

记录下遇到的问题&#xff1a; ⚠注意&#xff1a;64位系统和32位系统的配置不太一样 1、运行npm run packager失败 原因&#xff1a;在package.json没有对应命令 解决&#xff1a;在package.json 中添加对应命令&#xff0c;其中testApp是你想要的输入的项目名称&#xff0…

编程:不只是工作,是我生活的一部分

开篇 大家好&#xff0c;今天想聊聊我怎么把对编程的爱好变成了自己的饭碗。是的&#xff0c;我现在是个程序员&#xff0c;每天的工作就是和代码打交道。但说实话&#xff0c;这工作对我来说&#xff0c;不只是敲敲键盘那么简单&#xff0c;它是我对生活的一种态度&#xff0…

element用户上传头像组件带大图预览,和删除功能

element 用户上传组件不支持大图预览&#xff0c;拿组件的简单修改一些&#xff0c;发表上来主要是记一下&#xff0c;以后可以用 效果图 <template><div class"flex-img"><div class"el-upload-list el-upload-list--picture-card" v-sh…

word从零基础到高手【办公】

第1课 - word基础操作快速入门第2课 - 让你效率10倍提升的快捷操作第3课 - word排版快速入门第4课 - 排版实战案例讲解第5课 - 搞定论文排版全过程第6课 - 让你的word更强大的神技第7课 - 提高工作效率必备的批量操作 资料截图如下: 发送: "word办公" 获取提取码

动态规划-入门理解

一、什么情况可以使用动态规划 动态规划 最优子结构 重叠子问题 转移方程 最优子结构&#xff1a;保证能从局部解推出全局解&#xff0c;也就是保证能够写出转移方程 重叠子问题&#xff1a;说明暴力解法太耗时&#xff0c;我们可以使用动态规划进行优化 转移方程&#xff…

基于GAN的图像补全实战

数据与代码地址见文末 论文地址:http://iizuka.cs.tsukuba.ac.jp/projects/completion/data/completion_sig2017.pdf 1.概述 图像补全,即补全图像中的覆盖和缺失部分, 网络整体结构如下图所示,整体网络结构还是采取GAN,对于生成器,网络结构采取Unet的形式,首先使用卷积…

深入浅出 -- 系统架构之负载均衡Nginx跨域配置

一、Nginx跨域配置 跨域问题在之前的单体架构开发中&#xff0c;其实是比较少见的问题&#xff0c;除非是需要接入第三方SDK时&#xff0c;才需要处理此问题。但随着现在前后端分离、分布式架构的流行&#xff0c;跨域问题也成为了每个Java开发必须要懂得解决的一个问题。 跨域…