当前位置: 首页 > news >正文

长宁微信手机网站制作/百度竞价渠道户

长宁微信手机网站制作,百度竞价渠道户,wordpress源码商城模板,温州网站建设 seo目录 前言 Redis操作都会,却不知道怎么用? 关于《Redis 应用实例》 编辑推荐 内容简介 作者简介 图书目录 《Redis 应用实例》全书速览 拓展:Redis使用场景 实例1:缓存应用 场景描述 实现方法 具体代码示例 实例2&a…

目录

前言

Redis操作都会,却不知道怎么用?

关于《Redis 应用实例》

编辑推荐

内容简介

作者简介

图书目录

《Redis 应用实例》全书速览

拓展:Redis使用场景

实例1:缓存应用

场景描述

实现方法

具体代码示例

实例2:消息队列

场景描述

实现方法

具体代码示例

实例3:排行榜

场景描述

实现方法

具体代码示例

实例4:实时分析

场景描述

实现方法

具体代码示例

结束语


前言

众所周知,Redis是一个开源的高性能键值对数据库,以其出色的读写性能和丰富的数据结构而闻名,它被广泛应用于缓存、消息队列、排行榜、实时分析等场景。在当今信息技术迅猛发展的背景下,Redis以其卓越的性能和灵活性,已经成为众多开发者和企业的首选技术之一。作为一个开源的高性能键值对数据库,Redis不仅支持数据的快速存取,还提供了丰富的数据结构和功能,使其在多种应用场景中都能发挥关键作用。从简单的缓存解决方案到复杂的实时分析系统,Redis的应用实例几乎涵盖了现代软件开发的每一个角落。那么本文就来详细通过一系列具体的应用实例,深入探讨Redis的实际应用,旨在为大家提供一个全面的Redis使用指南。

Redis操作都会,却不知道怎么用?

其实Redis 作为一款高性能缓存服务,在互联网后端有着广泛的应用,也成为内存数据库事实上的标准。程序员想要构建快速响应的服务,就有必要学习 Redis 并应用在工程中。但不少程序员在学完 Redis 的基本操作后,就陷入了一个困境,一问操作都会,但在实际工作中一用就发懵,这是为何?Redis 本质上是一个键值对数据库,支持多种数据结构,如字符串、列表、集合、有序集合和哈希表等。程序员在掌握了数据的插入、查询、修改、删除操作后,面临的难题其实是如何为业务选择最合适的数据结构与解决方案。

我们来了解一下 Redis 的主流应用场景:

  • 缓存:作为缓存数据库,减少对后端数据库的访问,提高系统性能。
  • 会话存储:在分布式系统中,用来存储用户会话信息,实现会话共享。
  • 排行榜和计数器:有序集合适合实现各种排行榜功能,如社交网络的点赞数、评论数等。
  • 消息队列:发布/订阅功能可以构建简单的消息队列系统。
  • 实时分析:可以用于统计网站的访问量、用户行为分析等。

如果仅靠自己在上述业务场景中去摸索,那不知要费多少功夫,要是有现成的实例可供参考那该多好。

关于《Redis 应用实例》

接下来给大家推荐关于Redis的书籍,这是一本关于如何用Redis的干货图书,一经上市就登上了当当“计算机与互联网”图书排行榜前列。本书从Redis原理剖析讲起到实战技巧,助企业在日常业务实战工作中轻松实现!另外,关注本文博主,点赞+收藏本文,且在本文评论区评论“入手Redis”,将选取四名幸运读者送出纸质版《Redis 应用实例》一本,截止时间:2024.12.12。入手《Redis 应用实例》传送门:https://item.jd.com/14873828.html或者《Redis应用实例》(黄健宏)【简介_书评_在线阅读】 - 当当图书,个人觉得这本书非常的不错,是一本不可多得的好书,值得拥有去学习。

编辑推荐

适读人群 :本书适合对Redis有基本了解、想要了解Redis以及键值数据库具体应用的技术人群,适合用于作为培训教程,主用于Redis入门之后、深入了解Redis源码之前的技术进阶。

1.内容实用。帮助读者更好地了解如何使用Redis解决实际问题,应对在真实开发场景中可能面对的挑战。

2.知识点丰富。全书32个应用实例覆盖了Redis常见的应用场景和使用方法。不仅介绍使用Redis命令实现应用实例的方法,还给出与之对应的可运行的Python代码。易于理解,又方便读者做进一步的拓展学习或者进行代码移植。

3.帮助Redis初学者快速将Redis应用到实际场景中,引导有一定基础的Redis开发者探索Redis的高级特性,提升系统性能。

4.通过对书中介绍的Redis应用实例的学习,能面提升Redis技能,解锁Redis开发的无限可能,真正成为能够使用Redis解决各类实际问题的技术高手。

本书特色

●贴近实战:书中所有实例均取材于实际应用场景,展示Redis在实际开发中的多样性,方便读者将所学方法复用到项目中,提升开发效率。

●内容全面:书中既介绍了经典的缓存、锁、数据结构等低层应用,又介绍了紧跟潮流的自动补全、排行榜、地理位置等高层应用,为读者提供全面的技术内容。

●代码详尽:书中所有应用实例均基于新版Redis和Python编写,每个实例都是可执

行的,并包含了必需的API,读者可以方便地在这些实例的基础上进行测试、修改和扩展。

●配套视频:作者专为书中较复杂的知识点录制了“Redis应用十讲”视频讲解,读者可以扫描对应章节首页的码免费观看,并获得完整视频讲解PPT课件。

●简洁精练:书中应用实例简洁、易懂,各技术层级的读者均可轻松阅读。

内容简介

本书将从内部组件、外部应用和数据结构3个方面为读者介绍Redis常见、经典的用法与实例,并且所有实例均附有完整的Python代码,方便读者学习和参考。全书分3个部分:第一部分讲内部组件,介绍的实例通常用于系统内部,如缓存、锁、计数器、迭代器、速率限制器等,这些都是很多系统中不可或缺的部分;第二部分讲外部应用,介绍的实例都是一些日常常见的、用户可以直接接触到的应用,如直播弹幕、社交关系、排行榜、分页、地理位置等;第三部分讲数据结构,介绍的实例是一些使用Redis实现的常见数据结构,如先进先出队列、栈、优先队列和矩阵等。本书希望通过展示常见的Redis应用实例来帮助读者了解使用Redis解决各类问题的方法,并加深读者对Redis各项命令及数据结构的认识,使读者真正成为能够使用Redis解决各类问题的Redis专家。

本书适合对Redis有基本了解且想要进一步掌握Redis及键值数据库具体应用的技术人群,是理想的Redis技术进阶读物。

作者简介

黄健宏

计算机技术图书作者和译者,关注的领域包括数据库、编程语言、操作系统,以及算法和数据结构。

他从2011年开始关注Redis,翻译过Redis文档,注释过Redis源代码,发表了大量关于Redis的文章,还撰写了广受Redis使用者喜爱的源码分析书《Redis设计与实现》,并翻译了热销的Redis入门书《Redis实战》。

他还是《Redis使用手册》的作者,《SQL实战(第2版)》、《Go语言趣学指南》和《Go Web编程》的译者。

图书目录

第一部分 内部组件

第 1章 缓存文本数据3

1.1 需求描述3

1.2 解决方案:使用字符串键缓存单项数据3

1.3 实现代码:使用字符串键缓存单项数据4

1.4 解决方案:使用JSON 哈希键缓存多项数据5

1.5 实现代码:使用JSON 哈希键缓存多项数据6

1.6 重点回顾9

第 2章 缓存二进制数据11

2.1 需求描述11

2.2 解决方案11

2.3 实现代码12

2.4 重点回顾13

第3章 锁15

3.1 需求描述15

3.2 解决方案15

3.3 实现代码16

3.4 扩展方案:带自动解锁功能的锁17

3.5 重点回顾19

第4章 带密码保护功能的锁21

4.1 需求描述21

4.2 解决方案21

4.3 实现代码22

4.4 重点回顾23

第5章 自增数字ID25

5.1 需求描述25

5.2 解决方案:使用字符串键25

5.3 实现代码:使用字符串键实现自增数字ID生成器26

5.4 解决方案:使用哈希键27

5.5 实现代码:使用哈希键实现自增数字ID生成器27

5.6 重点回顾28

第6章 计数器29

6.1 需求描述29

6.2 解决方案:使用字符串键29

6.3 实现代码:使用字符串键实现计数器30

6.4 解决方案:使用哈希键31

6.5 实现代码:使用哈希键实现计数器32

6.6 重点回顾33

第7章 唯一计数器35

7.1 需求描述35

7.2 解决方案:使用集合键35

7.3 实现代码:使用集合键实现唯一计数器36

7.4 解决方案:使用HyperLogLog键37

7.5 实现代码:使用HyperLogLog键实现唯一计数器38

7.6 重点回顾39

第8章 速率限制器41

8.1 需求描述41

8.2 解决方案41

8.3 实现代码42

8.4 重点回顾45

第9章 二元操作记录器47

9.1 需求描述47

9.2 解决方案47

9.3 实现代码48

9.4 重点回顾49

第 10章 资源池51

10.1 需求描述51

10.2 解决方案51

10.3 实现代码52

10.4 重点回顾54

第 11章 紧凑字符串57

11.1 需求描述57

11.2 解决方案58

11.3 实现代码58

11.4 重点回顾60

第 12章 数据库迭代器61

12.1 需求描述61

12.2 解决方案61

12.3 实现代码62

12.4 扩展实现:数据库采样程序64

12.5 重点回顾66

第 13章 流迭代器67

13.1 需求描述67

13.2 解决方案:使用XRANGE67

13.3 实现代码:使用XRANGE实现

流迭代器69

13.4 解决方案:使用XREAD70

13.5 实现代码:使用XREAD实现流 迭代器71

13.6 重点回顾73

第二部分 外部应用

第 14章 消息队列77

14.1 需求描述77

14.2 解决方案77

14.3 实现代码78

14.4 扩展实现:直播间弹幕系统 80

14.5 重点回顾82

第 15章 标签系统85

15.1 需求描述85

15.2 解决方案85

15.3 实现代码86

15.4 扩展实现:为根据标签查找目

标功能加上缓存88

15.5 重点回顾90

第 16章 自动补全91

16.1 需求描述91

16.2 解决方案91

16.3 实现代码92

16.4 扩展实现:自动移除冷门输入建议表94

16.5 重点回顾96

第 17章 抽奖97

17.1 需求描述97

17.2 解决方案97

17.3 实现代码98

17.4 重点回顾100

第 18章 社交关系101

18.1 需求描述101

18.2 解决方案101

18.3 实现代码102

18.4 重点回顾105

第 19章 登录会话107

19.1 需求描述107

19.2 解决方案107

19.3 实现代码108

19.4 重点回顾110

第 20章 短网址生成器111

20.1 需求描述111

20.2 解决方案111

20.3 实现代码113

20.4 扩展实现:为短网址生成器加上缓存114

20.5 重点回顾116

第 21章 投票117

21.1 需求描述117

21.2 解决方案117

21.3 实现代码119

21.4 重点回顾121

第 22章 排行榜123

22.1 需求描述123

22.2 解决方案123

22.3 实现代码124

22.4 重点回顾126

第 23章 分页127

23.1 需求描述127

23.2 解决方案127

23.3 实现代码129

23.4 重点回顾131

第 24章 时间线133

24.1 需求描述133

24.2 解决方案133

24.3 实现代码135

24.4 重点回顾138

第 25章 地理位置139

25.1 需求描述139

25.2 解决方案139

25.3 实现代码140

25.4 扩展实现:实现“摇一摇”功能142

25.5 扩展实现:为“摇一摇”功 能设置缓存143

25.6 重点回顾145

第三部分 数据结构

第 26章 先进先出队列149

26.1 需求描述149

26.2 解决方案149

26.3 实现代码150

26.4 扩展实现:反方向的队列152

26.5 重点回顾153

第 27章 定长队列和淘汰队列155

27.1 需求描述155

27.2 解决方案155

27.3 实现代码157

27.4 扩展实现:淘汰队列158

27.5 重点回顾160

第 28章 栈(后进先出队列)161

28.1 需求描述161

28.2 解决方案161

28.3 实现代码162

28.4 扩展实现:为栈添加更多方法163

28.5 重点回顾164

第 29章 优先队列165

29.1 需求描述165

29.2 解决方案165

29.3 实现代码167

29.4 扩展实现:为优先队列加上阻塞操作169

29.5 重点回顾170

第30章 循环队列171

30.1 需求描述171

30.2 解决方案171

30.3 实现代码172

30.4 扩展实现:无重复元素的循环队列174

30.5 重点回顾176

第31章 矩阵177

31.1 需求描述177

31.2 解决方案:使用列表177

31.3 实现代码:使用列表实现矩阵存储178

31.4 解决方案:使用位图180

31.5 实现代码:使用位图实现矩阵存储181

31.6 重点回顾184

第32章 逻辑矩阵185

32.1 需求描述185

32.2 解决方案185

32.3 实现代码186

32.4 扩展实现:优化内存占用188

32.5 重点回顾192

《Redis 应用实例》全书速览

拓展:Redis使用场景

最后再来分享一下关于redis的使用场景,这里大概用了四个使用场景来讲,具体如下所示。

实例1:缓存应用

场景描述

在高流量的Web应用中,数据库查询是一个耗时的操作,特别是在读多写少的场景下。使用Redis作为缓存层可以显著提高应用的响应速度。

实现方法

  1. 缓存热点数据:将频繁访问的数据,如用户信息、商品详情等,存储在Redis中。
  2. 设置过期时间:为缓存数据设置合理的过期时间,保证数据的新鲜度。
  3. 缓存穿透处理:对于查询结果为空的情况,也在Redis中设置一个空值的缓存,避免直接查询数据库。

具体代码示例

// Java Jedis客户端使用示例
Jedis jedis = new Jedis("localhost");
// 写入缓存
jedis.set("user:1000", "{\"name\":\"John\", \"age\":30}");
// 读取缓存
String userData = jedis.get("user:1000");

实例2:消息队列

场景描述

在需要异步处理任务的场景中,如订单处理、邮件发送等,Redis可以作为一个简单高效的消息队列系统。

实现方法

  1. 使用List数据结构:生产者将消息推送到List的一个端,消费者从另一个端弹出消息。
  2. 原子操作:利用Redis的RPUSH和BLPOP命令保证消息的原子性操作。

具体代码示例

// 生产者
Jedis jedis = new Jedis("localhost");
jedis.rpush("messageQueue", "Hello World");// 消费者
List<String> messages = jedis.blpop(0, "messageQueue");
String message = messages.get(0);

实例3:排行榜

场景描述

在需要实时更新排行榜的应用中,如游戏得分、商品销量等,Redis的有序集合(ZSet)是一个理想的选择。

实现方法

  1. 使用ZSet存储得分:每个成员的得分随着用户行为实时更新。
  2. 范围查询:利用ZREVRANGE命令快速获取排行榜的前N名。

具体代码示例

// 用户得分更新
Jedis jedis = new Jedis("localhost");
jedis.zadd("leaderboard", 95, "user:1001");
jedis.zadd("leaderboard", 100, "user:1002");// 获取排行榜前3名
Set<String> topUsers = jedis.zrevrange("leaderboard", 0, 2);

实例4:实时分析

场景描述

在需要实时分析用户行为的场景中,如页面访问量统计、用户活跃度分析等,Redis提供了快速的数据聚合能力。

实现方法

  1. 使用HyperLogLog:对独立用户进行去重统计。
  2. 使用GeoAdd:对用户地理位置信息进行存储和查询。

具体代码示例

// 独立用户去重统计
Jedis jedis = new Jedis("localhost");
jedis.pfadd("uniqueVisitors", "user:1001");
jedis.pfadd("uniqueVisitors", "user:1002");// 获取独立用户数量
long uniqueCount = jedis.pfcount("uniqueVisitors");

结束语

通过本文的详细介绍,不难看出Redis以其卓越的性能和灵活性,在多种应用场景中发挥着重要作用,尤其是Redis在现代应用开发中扮演的多面手角色。无论是作为缓存层提高性能,还是作为消息队列处理异步任务,亦或是构建实时排行榜和分析系统,Redis都以其独特的优势,为用户提供了强大的技术支持和灵活的开发选项,通过上面的实例可以看到Redis在缓存、消息队列、排行榜和实时分析等方面的强大能力。随着技术的不断发展,Redis将继续在现代应用架构中扮演关键角色,为用户提供更加丰富和高效的服务,帮助开发者构建更加高效、可靠的应用程序。期待各位开发者继续探索Redis的更多可能,利用其强大的功能,为用户创造更加丰富和便捷的数字体验。

相关文章:

2024三掌柜赠书活动第三十五期:Redis 应用实例

目录 前言 Redis操作都会&#xff0c;却不知道怎么用&#xff1f; 关于《Redis 应用实例》 编辑推荐 内容简介 作者简介 图书目录 《Redis 应用实例》全书速览 拓展&#xff1a;Redis使用场景 实例1&#xff1a;缓存应用 场景描述 实现方法 具体代码示例 实例2&a…...

观察者模式的理解和实践

引言 在软件开发中&#xff0c;设计模式是开发者们为了解决常见的设计问题而总结出来的一系列最佳实践。观察者模式&#xff08;Observer Pattern&#xff09;是其中一种非常经典且使用率极高的设计模式。它主要用于定义对象之间的一对多关系&#xff0c;使得当一个对象的状态发…...

查看Windows系统上的Redis服务器是否设置了密码

查看 Redis 配置文件 1.找到 Redis 配置文件&#xff1a; 通常Redis配置文件名为 redis.windows.conf 或 redis.conf&#xff0c;它位于Redis安装目录中。 2.打开配置文件&#xff1a; 使用文本编辑器&#xff08;如Notepad、VS Code等&#xff09;打开该文件。 3.查找 re…...

认识Java中的异常(半成品)

1.异常的概念与体系结构 1.1在Java中,将程序执行过程中发生的不正常行为称为异常.比如 1.算数异常 public class Main1 {public static void main(String[] args){System.out.println(10/0);} } //异常信息为:Exception in thread "main" java.lang.ArithmeticExc…...

生成SSH秘钥文件

git生成文件命令 # 配置用户名和邮箱 git config --global user.name "你的GitHub用户名" git config --global user.email "你的GitHub邮箱"# 生成ssh-key ssh-keygen -t rsa -C “你的GitHub邮箱" # 验证 ssh -T gitgithub .com 第一步&#xff1a;…...

wsl2子系统ubuntu发行版位置迁移步骤

默认的wsl2发行版是安装在windos的c盘&#xff0c;占用空间较大&#xff0c;有迁移需求&#xff0c;也可以迁移到其他电脑&#xff1b; 查看现有发行版信息 运行以下命令查看现有的 WSL 发行版及其状态&#xff1a; wsl --list --verbose# 输出示例NAME STATE …...

协程设计原理与实现

协程设计原理与汇编实现 同步与异步 对于任何一个事情&#xff0c;都可以划分为不同的步骤。所谓同步&#xff0c;就先做第一个事情&#xff0c;按照这件事的步骤完成这件事之后&#xff0c;再去做第二件事。再去做第三件事&#xff0c;以此类推。 异步就是&#xff0c;可以…...

合并区间C和C++的区别、布尔、整型、浮点、指针类型和0做比较、malloc、calloc、realloc的区别

56. 合并区间 class Solution { public:vector<vector<int>> merge(vector<vector<int>>& intervals) {//先按照每个区间的左元素排序&#xff0c;这样每个区间的左边界就固定了&#xff0c;所以之后考虑相邻的//区间是否是相交的就行 类似与栈的…...

Flutter 图片编辑板(一) 事件路由

一个图片编辑板&#xff0c;有两部分组成。编辑板和内容项。每一个内容项是被InteractiveViewer修饰的widget&#xff0c;具有缩放偏移的功能。 在图片编辑板上&#xff0c; 会有多个内容相&#xff0c;图片或文字&#xff08;添加文字目前还没做过&#xff09;。 当要编辑其中…...

【Java】—— 图书管理系统

基于往期学习的类和对象、继承、多态、抽象类和接口来完成一个控制台版本的 “图书管理系统” 在控制台界面中实现用户与程序交互 任务目标&#xff1a; 1、系统中能够表示多本图书的信息 2、提供两种用户&#xff08;普通用户&#xff0c;管理员&#xff09; 3、普通用户…...

数据库基础入门:从零开始学习数据库的核心概念

数据库是现代软件开发的核心组成部分之一&#xff0c;无论是网站、手机应用还是企业管理系统&#xff0c;都离不开数据库的支持。本文将带你从零开始&#xff0c;逐步了解数据库的基本概念和常见操作。 什么是数据库&#xff1f; 数据库&#xff08;Database&#xff09;是一个…...

Y20030002 微信+Java+Jsp+Servlet+MySQL的问卷调查小程序的设计与实现 源代码 配置文档 全套资料

问卷调查微信小程序 1.摘要2. 系统开的背景和意义3. 国内外研究现状4. 系统功能5.界面展示6.源码获取 1.摘要 摘 要&#xff1a;本文深入研究并实现了一个基于微信小程序的问卷调查系统。微信小程序问卷调查系统借助于微信小程序的便捷性和普及性&#xff0c;为用户提供了一个…...

ros项目dual_arm_pick-place(urdf文件可视化查看)

前言 一直想写一些项目的讲解&#xff0c;今天&#xff08;2024.12.05&#xff09;可以说正式开始了。 dual_arm_pick-place项目&#xff0c;是关于两个机械臂协同传递物品。 正文 这次的话&#xff0c;给大家讲一下里面的urdf文件。 这篇文章主要来看一下项目中的urdf文件…...

AI-安全-B站

1 需求 百度-林道正-《大模型合规探索》火山引擎-林泽韬-《大模型安全挑战与防护实践》Chamd5-bayuncao-《基于RAG的AI代码审计框架》德国电信咨询有限公司-杨麟-《AI在SOC中的应用发展》360-李亚青-《以模制模&#xff0c;大模型安全的解决之道》金晴云华-富吉祥-《安全大脑在…...

【C#设计模式(19)——备忘录模式(MementoPattern)】

前言 备忘录模式&#xff1a;将想要备份的信息交给备忘录对象来管理。通过设置初始、备份、修改、恢复等状态展示备忘录模式的使用。 代码 //备忘录类 public class Memento {private string state;public string State { get>state;}public Memento(string state){this.st…...

第三部分:进阶概念 8.事件处理 --[JavaScript 新手村:开启编程之旅的第一步]

JavaScript 事件处理是 Web 开发中不可或缺的一部分&#xff0c;它允许开发者响应用户的交互行为&#xff08;如点击、键盘输入等&#xff09;或浏览器的行为&#xff08;如页面加载完成&#xff09;。通过事件处理&#xff0c;我们可以使网页更加动态和互动。以下是关于 JavaS…...

工具推荐-js爬取工具

现在测试方向都偏向于从js中的接口来入手找到可以进的点&#xff0c;关于快速扫描js文件来发现敏感接口的工具有很多&#xff0c;下面的jjjjs就是其一 项目地址: GitHub - ttstormxx/jjjjjjjjjjjjjs: 爬网站JS文件&#xff0c;自动fuzz api接口&#xff0c;指定api接口&#x…...

Android问题记录 - Inconsistent JVM-target compatibility detected for tasks

文章目录 前言开发环境问题描述问题分析解决方案补充内容最后 前言 前段时间升级Android Studio后修复了一堆问题&#xff0c;详情请看&#xff1a;Android问题记录 - 适配Android Studio Ladybug/Java 21/AGP 8.0&#xff08;持续更新&#xff09;。我以为问题已经全部解决了…...

ejb组件(rmi) webservice平台(xml)

springboot bean 在 Spring Boot 中&#xff0c;Bean 是 Spring 框架的核心概念之一&#xff0c;表示由 Spring 容器管理的对象。通过 Bean 或其他注解&#xff08;如 Component、Service、Repository 等&#xff09;来定义和管理这些对象。以下是关于 Spring Boot 中 Bean 的…...

【jvm】垃圾回收的重点区域

目录 1. 说明2. 堆&#xff08;Heap&#xff09;3. 方法区&#xff08;Method Area&#xff09; 1. 说明 1.JVM&#xff08;Java Virtual Machine&#xff09;垃圾回收的重点区域主要集中在堆&#xff08;Heap&#xff09;和方法区&#xff08;Method Area&#xff09;。2.堆是…...

PyQt信号槽实现页面的登录与跳转 #页面进一步优化

将登录框中的取消按钮使用信号和槽的机制&#xff0c;关闭界面。 将登录按钮使用信号和槽连接到自定义的槽函数中&#xff0c;在槽函数中判断ui界面上输入的账号是否为"admin"&#xff0c;密码是否为"123456",如果账号密码匹配成功&#xff0c;当前界面关…...

谈谈web3

全面解析 Web3&#xff1a;未来互联网的革命性进程 引言&#xff1a;互联网进化的三部曲 互联网的发展经历了三个重要阶段&#xff0c;每一个阶段都深刻地改变了我们的生活方式&#xff1a; Web1&#xff08;1990-2005&#xff09;&#xff1a;静态互联网时代&#xff0c;人…...

正则表达式实战例子

正则表达式实战例子 1. 验证电子邮件地址 定义一个合理的电子邮件格式&#xff0c;并检查给定的字符串是否符合这个模式。 import redef is_valid_email(email):# 定义电子邮件格式的正则表达式pattern r^[a-zA-Z0-9_.-][a-zA-Z0-9-]\.[a-zA-Z0-9-.]$return bool(re.match(…...

Hadoop不同版本的区别

免费springboot&#xff0c;vue&#xff0c;springcloudalibaba视频&#xff0c;有兴趣可以看看 <!-- springboot&#xff0c;springboot整合redis&#xff0c;整合rocketmq视频&#xff1a; --> https://www.bilibili.com/video/BV1nkmRYSErk/?vd_source14d27ec13a473…...

QtCreator UI界面 菜单栏无法输入中文

如下图红色所示的区域&#xff0c;直接输入是无法输入中文的&#xff1a; 解决方法&#xff1a;在右边的属性值里输入即可 也可以参考这位同学的解决方法&#xff1a;友情链接...

java switch及其新特性

switch是什么 在Java中&#xff0c;switch语句是一种多分支选择结构&#xff0c;它允许程序根据一个表达式的值从多个代码块中选择执行哪一个。switch语句通常比多个if-else语句更清晰、更易读。 Java switch语句的基本语法&#xff1a; switch (expression) {case value1:/…...

E卷-货币单位换算(100分)

货币单位换算 问题描述 在一个多国货币记账本中,记录了若干条不同货币的金额。现在需要将这些金额全部转换成人民币分(fen),并进行汇总。每条记录可能包含单独的元、单独的分,或者元与分的组合。转换时,需要考虑不同货币之间的汇率关系。 要求将这些货币全部换算成人民…...

什么是MMD Maximum Mean Discrepancy 最大均值差异?

9多次在迁移学习看到了&#xff0c;居然还是Bernhard Schlkopf大佬的论文&#xff0c;仔细看看。 一.什么是MMD&#xff1f; 1. MMD要做什么&#xff1f; 判断两个样本&#xff08;族&#xff09;是不是来自于同一分布 2.怎么做&#xff1f;&#xff08;直观上&#xff09;…...

沐风老师3DMAX摄相机阵列插件使用方法

3DMAX摄相机阵列插件&#xff0c;从网格对象或样条线的顶点法线快速创建摄相机阵列。该插件从网格的顶点或样条线的节点获取每个摄影机的位置和方向。 3DMAX摄相机阵列插件支持目前3dMax主流的物理相机、标准相机、VRay物理相机。 【版本要求】 3dMax 2015及更高版本 【安装方…...

Java Web 开发学习中:过滤器与 Ajax 异步请求

一、过滤器 Filter&#xff1a; 过滤器的概念与用途 在一个庞大的 Web 应用中&#xff0c;有许多资源需要受到保护或进行特定的预处理。过滤器就像是一位智能的守卫&#xff0c;站在资源的入口处&#xff0c;根据预先设定的规则&#xff0c;决定哪些请求可以顺利访问资源&…...