Java苍穹外卖03-Redis-营业状态-HttpClient-微信小程序开发-微信登录以及浏览

news2024/11/24 1:33:02

一、Redis入门

1.Redis简介

是对MySQL数据库的补充

2.下载安装

启动redis:

再开一个cmd:连接本地redis数据库

如果想连接其他地方的redis数据库:h为ip,p为端口 a为密码

3.数据类型

哈希适合存储对象,列表适合存储有顺序的数据比如点赞,有序集合适合比如排行榜的数据

二、Redis常用命令

1.字符串操作命令

第三个过期时间,应用场景为验证码,第四条适用于分布式锁

2.哈希操作命令

3.列表操作命令

LPUSH mylist a b c 就会让a到尾部c处于头部

4.集合操作命令

5.有序集合操作命令

 

6.通用命令

这里模式可以是*或者set*第二个是模糊查询

三、在Java中操作Redis

1.Redis的Java客户端

第一个和redis操作时对应的,封装优秀
第二个是基于lett多线程开发的,性能很高效

配置:

配置类:

2.Reids在Java中的操作方式

在Java中可以通过模板创建5个对象来操作redis中的数据类型

在Java中的任何数据都会序列化redis中的字符串类型,两个字符串类型不一致。

①Java操作字符串类型

注意由于这里是Java中操作redis所以值会乱码或者不是直观显示的,但是可以在Java中获取正确的值。这里的key没有乱码是因为设置了序列化器为StringRedisSerializer。

②Java操作Hash类型

③Java操作列表类型

④Java操作集合类型

⑤Java操作有序集合类型

⑥通用命令

四、店铺营业状态设置

1.需求分析

管理端查询接口:

用户端查询接口:

由于存储数据简单可以放进redis进行存储

2.代码开发

管理端controller:

用户端controller:

Swagger接口文档可以分成两部分管理端和用户端
只需要在配置的时候扫描两个不同的包,并且进行分组就可以实现。

五、HttpClient

1.介绍

可以通过这个工具包在Java中构造http请求并且发送http请求

2.入门案例

Post请求,请求时要传入数据,Java书写方式:

项目中将这些方法封装成一个类,便于使用,HttpClientUtil工具类

六、微信小程序开发

1.介绍

 

2.准备工作

开发者工具有三部分,模拟器,调试器,和编辑器

3.入门案例

①目录结构

其中appjson保存的是配置文件,而app.wxss保存的是样式文件

②小程序开发逻辑

每个page中的index代表一个页面中的功能:
其中index.js是主要的逻辑代码:

其中index.wxml中是布置页面布局的代码

这生成了一个获取用户信息的按钮,并动态返回用户名和图片的url,当用户点击后就会展示出来

获取用户授权码

③发送异步请求

这里调用wx的request方法,配置好请求路径,以及方法,就可以发送请求。

七、微信登录

1.微信登陆流程


登录流程是:小程序获取用户code并发送code到后端服务器,后端服务器根据微信接口服务API,使用HttpClient发送请求到微信服务器拿到用户的唯一标识,然后为用户赋登录态,微信小程序在后续请求中都会携带这个登录态到token中,来校验。

2.需求分析

3.代码开发

controller:

这里接收到请求,根据传入的code调用service获取用户的信息,并为其创建JWT令牌,并返回UserLoginVO对象。

service:

这里使用HttpClient根据传入的code为微信服务接口发送请求,获得唯一标识码openid后,判断SQL库里是否存在,不存在添加数据,然后返回user对象。

八、商品浏览

1.需求分析

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

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

相关文章

【问题实操】银河麒麟高级服务器操作系统实例,CPU软锁报错触发宕机

1.服务器环境以及配置 处理器: Kunpeng 920 内存: 256G DDR4 整机类型/架构: TaiShan 200 (Model 2280) 内核版本 4.19.90-23.8.v2101.ky10.aarch64 2.问题现象描述 两台搭载麒麟v10 sp1的机器均在系统CPU软锁报错时,触…

基于遗传优化算法的TSP问题求解matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 基于遗传优化算法的TSP问题求解,分别对四个不同的城市坐标进行路径搜索。 2.测试软件版本以及运行结果展示 MATLAB2022A版本运行 3.核心程序 ....…

迅睿CMS图集多文件Files调用指南

在构建企业网站、B2B/B2C商城,或任何功能性质以图片展示为主的平台时,使用多图或图集功能变得至关重要。特别是当展示大量产品的详细视图、项目案例图片,或任何需要以图集形式呈现的内容时,多文件Files功能便发挥着无可替代的作用…

Facebook的语言学:社交媒体如何影响我们的沟通方式

1. 引言 社交媒体已经成为人们日常生活中不可或缺的一部分,而Facebook作为其中最具影响力的平台之一,不仅改变了人们之间的社交方式,也对我们的语言学产生了深远的影响。本文将深入探讨Facebook的语言学特点,以及它如何塑造和改变…

AI大模型探索之路-训练篇4:大语言模型训练数据集概览

系列文章目录🚩 AI大模型探索之路-训练篇1:大语言模型微调基础认知 AI大模型探索之路-训练篇2:大语言模型预训练基础认知 AI大模型探索之路-训练篇3:大语言模型全景解读 文章目录 系列文章目录🚩前言一、常用的预训练…

优秀的控制台厂家需要考虑哪些方面

在当今数字化时代,控制台已成为众多行业不可或缺的一部分。面对市场上众多的控制台厂家,如何选择合适的供应商成为了一个重要的问题。本文嘉德立将从需求分析、产品质量、价格、服务、口碑等多个方面,为您详细解析如何选择一家优秀的控制台厂…

珠宝品牌如何借助3D技术,成就营销破局之路?

随着电商的快速发展,一直以实体店销售为主的珠宝行业,也开始向线上销售转型,但珠宝作为客单价较高的商品,在线上销售的过程中,会面临图片展示效果不佳,无法亲身体验佩戴效果等问题。 而3D、VR、AR等技术的出…

数海启航:数学与人工智能的深度交织

在人类文明的长河中,数学始终扮演着探秘未知、构建理论框架的基石角色。随着科技的飞速发展,尤其是人工智能(AI)的兴起,数学与这一前沿领域的结合愈发紧密,成为推动AI进步的最强引擎。 一、数学&#xff1a…

20232801 2023-2024-2 《网络攻防实践》实践八报告

20232801 2023-2024-2 《网络攻防实践》实践八报告 1.实践内容 1.动手实践任务: 对提供的rada恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者. 2.动手实践任务二:分析Crackme程序 在WinXP Attac…

自定义一个RedisTemplate

1.引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency><dependency><groupId>redis.clients</groupId><artifactId>jedis&…

动手学深度学习——矩阵

1. 基本概念 1.1 标量 标量由只有一个元素的张量表示。 所以标量计算与程度开发中的普通变量计算没有差异。 import torchx torch.tensor(3.0) y torch.tensor(2.0)x y, x * y, x / y, x**y(tensor(5.), tensor(6.), tensor(1.5000), tensor(9.))1.2 向量 向量泛化自标量…

前端CSS基础11(相对定位,绝对定位,固定定位,粘性定位)

前端CSS基础11&#xff08;相对定位&#xff0c;绝对定位&#xff0c;固定定位&#xff0c;粘性定位&#xff09; CSS相对定位&#xff08;position: relative;&#xff09;相对定位的参考点在哪&#xff1f; CSS绝对定位&#xff08;position: absolute&#xff09;如何设置绝…

数据赋能(71)——数据要素:概念

从这期开始&#xff0c;可能讨论数据相关的更高层次的话题——数据要素。讨论数据要素目的&#xff0c;是为了从一个更为宏观的视野去审视数据及数据赋能。这不仅有助于我们深入理解数据的本质与潜在价值&#xff0c;更能为数据的充分利用与未来发展提供更广阔的视角与思路。 …

公共交通无障碍设施:科技翅膀助力盲人出行新飞跃

在城市的脉络中&#xff0c;公共交通扮演着连接每一个角落的重要角色。然而&#xff0c;对于视力受限的盲人朋友而言&#xff0c;这幅繁忙而复杂的交通网络往往隐藏着诸多不易察觉的障碍。值得庆幸的是&#xff0c;随着公共交通无障碍设施的不断完善&#xff0c;以及高科技辅助…

设计模式 装饰模式

文章目录 装饰模式简介装饰模式结构装饰模式代码 装饰模式简介 装饰器模式&#xff08;Decorator Pattern&#xff09;是一种结构型设计模式&#xff0c;它允许向现有对象动态添加新功能&#xff0c;而不需要修改其现有代码&#xff0c;并且可以通过组合多个装饰器对象实现多种…

org.yaml.snakeyaml.scanner.ScannerException: while scanning a simple key 。。。

控制台信息&#xff1a; 这个信息一般是yml文件配置出现了问题&#xff0c;如 出现非法数据 、缩进有问题等 问题地方如下&#xff0c;修改一下就好了 控制台一般报的这种错就是配置文件的格式不正确

FileLink内外网文件摆渡系统产品介绍

在现代企业中&#xff0c;往往存在着多个网络、系统之间的数据孤岛问题&#xff0c;数据难以互相访问和共享。 一、常用的内外网文件摆渡方式 传统的数据交换方式往往需要人工介入&#xff0c;效率低下且容易出错。如&#xff1a;U盘、FTP、VPN等&#xff0c;极易引发各种各样…

算法基础课 贪心算法模板题笔记

AcWing算法基础课 贪心算法模板题笔记 贪心得到的答案 > 最优解 贪心得到的答案 < 最优解 局部最优 -> 全局最优 文章目录 1 区间问题例1&#xff1a;区间选点例2&#xff1a;最大不相交区间数量例3&#xff1a;区间分组例4&#xff1a;区间覆盖 2 Huffman树例&…

Spark SQL - 简介

目录 1. 概念介绍 2. Spark SQL与Hive的区别 3. 数据结构分类 4. 特点 4.1 易整合 4.2 统一的数据访问方式 4.3 兼容hive 4.4 提供标准的数据连接 5 Spark的数据模型介绍 1. 概念介绍 sparkSQl是spark专门针对结构化数据(DataFrame和DataSets)处理的一个组件&#xf…

FFmpeg常用结构体、关键函数、ffplay.c分析

一、常用结构体&#xff1a; 1、AVFormatContext结构体&#xff1a; AVFormatContext是一个贯穿全局的数据结构&#xff0c;很多函数都要用它作为参数。FFmpeg代码中对这个数据结构的注释是format I/O context&#xff0c;此结构包含了一个视频流的格式内容。其中存有AVIputFor…