在一个应用系统的开发框架中,往往很多地方需要用到缓存的处理,有些地方是为了便于记录用户的数据,有些地方是为了提高系统的响应速度,如有时候我们在发送一个短信验证码的时候,可以在缓存中设置几分钟的过期时间,这样验证短信验证码的时候,就会自动判断是否过期了。本篇随笔结合CSRedis的使用,介绍如何实现缓存的初始化及使用的处理。1、在基于.netCore的WebAPI后端使用CSRedis关于CSRedis的使用,我们可以参考Github网站:https://github.com/2881099/csredis 进行了解。首先我们在使用前,需要添加对应的程序集应用。PackageNameNuGet
在一个应用系统的开发框架中,往往很多地方需要用到缓存的处理,有些地方是为了便于记录用户的数据,有些地方是为了提高系统的响应速度,如有时候我们在发送一个短信验证码的时候,可以在缓存中设置几分钟的过期时间,这样验证短信验证码的时候,就会自动判断是否过期了。本篇随笔结合CSRedis的使用,介绍如何实现缓存的初始化及使用的处理。1、在基于.netCore的WebAPI后端使用CSRedis关于CSRedis的使用,我们可以参考Github网站:https://github.com/2881099/csredis 进行了解。首先我们在使用前,需要添加对应的程序集应用。PackageNameNuGet
篇(17)-Asp.NetCore入门实战-文章管理之文章类别的管理如果要做一个CMS系统,那么文章管理算是入门,文章管理附带一个类别管理,用来对文章进行类别区分。所以,本章简单讲一些类别管理,这也是一个数据操作。(1).文章类别Sql表的建立CREATETABLE[dbo].[ArticleCategory]([Id][int]IDENTITY(1,1)NOTNULL,[Title][varchar](128)NOTNULL,[ParentId][int]NOTNULL,[ClassList][varchar](128)NULL,[ClassLayer][int]NULL,[Sort][in
篇(17)-Asp.NetCore入门实战-文章管理之文章类别的管理如果要做一个CMS系统,那么文章管理算是入门,文章管理附带一个类别管理,用来对文章进行类别区分。所以,本章简单讲一些类别管理,这也是一个数据操作。(1).文章类别Sql表的建立CREATETABLE[dbo].[ArticleCategory]([Id][int]IDENTITY(1,1)NOTNULL,[Title][varchar](128)NOTNULL,[ParentId][int]NOTNULL,[ClassList][varchar](128)NULL,[ClassLayer][int]NULL,[Sort][in
DQL查询语言子查询按照结果集的行列数不同,子查询可以分为以下几类:标量子查询:结果集只有一行一列(单行子查询)列子查询:结果集有一列多行行子查询:结果集有一行多列表子查询:结果集多行多列--查询比小虎年龄大的所有学生--标量子查询SELECT *FROM studentWHERE age>(SELECTageFROMstudentWHERENAME='小虎');--查询有一门学科分数大于90分的学生信息--列子查询SELECT *FROM studentWHERE idIN( SELECT s_id FROM scoresWHERE score>90);--查询男生且年龄最大的学生--行
DQL查询语言子查询按照结果集的行列数不同,子查询可以分为以下几类:标量子查询:结果集只有一行一列(单行子查询)列子查询:结果集有一列多行行子查询:结果集有一行多列表子查询:结果集多行多列--查询比小虎年龄大的所有学生--标量子查询SELECT *FROM studentWHERE age>(SELECTageFROMstudentWHERENAME='小虎');--查询有一门学科分数大于90分的学生信息--列子查询SELECT *FROM studentWHERE idIN( SELECT s_id FROM scoresWHERE score>90);--查询男生且年龄最大的学生--行
DQL查询语言子查询按照结果集的行列数不同,子查询可以分为以下几类:标量子查询:结果集只有一行一列(单行子查询)列子查询:结果集有一列多行行子查询:结果集有一行多列表子查询:结果集多行多列--查询比小虎年龄大的所有学生--标量子查询SELECT *FROM studentWHERE age>(SELECTageFROMstudentWHERENAME='小虎');--查询有一门学科分数大于90分的学生信息--列子查询SELECT *FROM studentWHERE idIN( SELECT s_id FROM scoresWHERE score>90);--查询男生且年龄最大的学生--行
DQL查询语言子查询按照结果集的行列数不同,子查询可以分为以下几类:标量子查询:结果集只有一行一列(单行子查询)列子查询:结果集有一列多行行子查询:结果集有一行多列表子查询:结果集多行多列--查询比小虎年龄大的所有学生--标量子查询SELECT *FROM studentWHERE age>(SELECTageFROMstudentWHERENAME='小虎');--查询有一门学科分数大于90分的学生信息--列子查询SELECT *FROM studentWHERE idIN( SELECT s_id FROM scoresWHERE score>90);--查询男生且年龄最大的学生--行
ArrayDeque(JDK双端队列)源码深度剖析前言在本篇文章当中主要跟大家介绍JDK给我们提供的一种用数组实现的双端队列,在之前的文章LinkedList源码剖析当中我们已经介绍了一种双端队列,不过与ArrayDeque不同的是,LinkedList的双端队列使用双向链表实现的。双端队列整体分析我们通常所谈论到的队列都是一端进一端出,而双端队列的两端则都是可进可出。下面是双端队列的几个操作:数据从双端队列左侧进入。数据从双端队列右侧进入。数据从双端队列左侧弹出。数据从双端队列右侧弹出。而在ArrayDeque当中也给我们提供了对应的方法去实现,比如下面这个例子就是上图对应的代码操作:pub
ArrayDeque(JDK双端队列)源码深度剖析前言在本篇文章当中主要跟大家介绍JDK给我们提供的一种用数组实现的双端队列,在之前的文章LinkedList源码剖析当中我们已经介绍了一种双端队列,不过与ArrayDeque不同的是,LinkedList的双端队列使用双向链表实现的。双端队列整体分析我们通常所谈论到的队列都是一端进一端出,而双端队列的两端则都是可进可出。下面是双端队列的几个操作:数据从双端队列左侧进入。数据从双端队列右侧进入。数据从双端队列左侧弹出。数据从双端队列右侧弹出。而在ArrayDeque当中也给我们提供了对应的方法去实现,比如下面这个例子就是上图对应的代码操作:pub