- 博客(67)
- 收藏
- 关注
原创 redis基本数据类型和常见命令
Redis是典型的key-value(键值型)数据库,key一般是字符串,而value包含很多不同的数据类型:Redis为了方便我们学习,将操作不同数据类型的命令也做了分组,在官网()可以查看到不同的命令:在redis客户端中,可以通过help @命令组名或help 命令名查看命令的用法本文首先将对redis的通用命令进行介绍,在讲解redis的5种基本数据类型(String,Hash,List,Set,SortedSet)中穿插介绍在redis中key的结构该如何设置。
2024-09-09 01:14:11 654
原创 linux系统安装,启动redis
输入redis-server即可,但是这样就得一直把这个终端晾在这里,redis服务才能保持启动,把这个终端关闭redis服务就没了,这显然不是我们所期望的。方式启动,则必须修改Redis配置文件,就在我们之前解压的redis安装包下(注意,如果redis正处于启动状态,请先杀死redis进程,否则如下指令会失效。该目录以及默认配置到环境变量,因此可以在任意目录下运行这些命令。现在,我们可以用下面这组命令来控制redis服务的状态(至此,我们redis的安装和启动工作已经完成。执行下面的命令,可以让。
2024-09-08 17:32:17 429
原创 Linux实用操作
环境变量是操作系统(Windows、Linux、Mac)在运行的时候,记录的一些关键性信息,用以辅助系统运行。env命令即可查看当前系统中记录的环境变量环境变量是一种KeyValue型结构,即名称和值,如下图:HOME:/home,用户的HOME路径USER:root,当前的操作用户PWD:当前工作路径......我们知道使用的一系列命令其实本质上就是一个个的可执行程序。比如,cd命令的本体就是:/usr/bin/cd 这个程序文件。
2024-09-06 23:12:26 1072
原创 为虚拟机配置固定的IP地址(CentOS9)
首先关闭虚拟机打开虚拟网络编辑器选择更改配置选择VMnet8,选择子网的IP和掩码 (这里的子网掩码为255.255.255.0,表示前24位为网络号,后8位为主机号)然后点击DHCP设置设置开始IP地址和结束IP地址(设置好后我们的IP只能选择在192.168.168.128和192.168.168.254之间) 保存后退出。
2024-09-04 21:05:24 490
原创 Linux下安装Docker-ce ,配置nginx容器
高并发处理能力有限,资源利用率不高。Nginx最初是为Linux等Unix-like系统设计的,虽然在Windows上也有版本,但可能不是所有功能都能完美兼容Windows环境,因此可能会遇到一些特定的稳定性问题,如内存泄漏、崩溃等。与Linux系统相比,Windows上可能缺乏一些专门的Nginx管理工具或插件,使得管理和维护Nginx服务器变得更加复杂。Windows系统的权限管理机制与Linux不同,可能需要对Nginx的权限进行额外的配置和管理,以确保系统的安全性。
2024-09-04 19:33:41 1189
原创 windows中命令行界面连接虚拟机(CentOS9)
打开windows用户目录下的 .ssh文件夹 ,用记事本打开公钥文件,复制里面的内容进入虚拟机用户目录下的.ssh目录执行命令 vi authorized_keys ,将之前复制的公钥粘贴进去(打印一下执行完后的结果)
2024-09-04 10:09:52 412
原创 Linux虚拟机安装(CentOS9)
需要自己设置一下内存,处理器,以及镜像文件。设置完硬件后,启动虚拟机,开始配置操作系统。设置root账户的密码。全部完成后,重启虚拟机。
2024-09-03 17:17:10 526
原创 统一异常处理,封装结果
抛出异常一定是请求失败的情况,需要异常状态码,异常信息。构造方法中需要有ResponseEnum,以便于我们手动抛出异常的时候可以指定它是什么类型的业务异常( 例:throw new BusinessException(ResponseEnum.INVALID_ACCOUNT);@Data//Data注解用于获取ResponseEnum@RestControllerAdvice (专门用于异常处理的一个aop)用@ExceptionHandler (异常的字节码文件)注解。
2024-09-02 20:37:15 412
原创 Linux——用户和权限
root用户拥有最大的系统操作权限,而普通用户在许多地方的权限是受限的。使用普通用户在根目录下创建文件夹切换到root用户后,继续尝试普通用户的权限,一般在其HOME目录内是不受限的。一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限。
2024-08-31 15:55:32 1192
原创 Linux基础命令
任何命令都支持:--help 选项, 可以通过这个选项,查看命令的帮助。如果想要查看命令的详细手册,可以通过man(manual, 手册)命令查看如下:帮助和手册都是全英文的,如果阅读吃力,可以通过重定向符输出到文件 然后通过翻译软件翻译内容查看
2024-08-30 20:52:32 739
原创 Linux环境准备(VMWare,finalshell,虚拟机快照)
我们可以通过创建快照的方式将当前虚拟机的状态保存下来,后续万一做了什么骚操作把虚拟机玩坏了,我们还可以通过快照回滚到之前正常的状态。(有点像git的版本回滚)
2024-08-30 10:24:16 216
原创 基于七牛云上传,下载文件
注:存储地区的选择基于你的用户的分布主要在哪里。 七牛云直接白送10GB给我们玩,很适合做项目想白嫖的小伙伴。Java SDK_SDK 下载_对象存储 - 七牛开发者中心(这里的代码仅供参考)2.yml文件中填入ak,sk和桶的相关配置3.写一个QiniuConfig来接收这些配置4.编写上传文件的核心代码为什么只有上传?因为这个桶是公有的,只需要上传时把返回的url存到数据库中,要下载文件时输入url即可下载。(最后介绍私有桶的上传和下载)服务类5.用knif
2024-08-29 23:53:37 452
原创 SpringBoot整合knife4j
在快速迭代的软件开发中,高效、直观的API文档至关重要。SpringBoot整合Knife4j,以自动化生成、美观展示及便捷调试为特点,为开发者提供了强大的API管理工具,极大地提升了团队协作效率与文档管理水平,是现代软件开发中不可或缺的一环。
2024-08-29 09:24:04 362
原创 一文搞定MybatisPlus
聚合和分组,无法使用lambda表达式完成,正如MP官网所说的,MybatisPlus只是对Mybatis进行增强,MP无法做到的事情我们还是要老老实实地回到mapper接口里面写sql。pwd是敏感数据,如果进行查询,返回的json数据中携带了pwd,这是很危险的,因此我们需要在查询中将pwd默认隐藏@Test默认的查询是查不出来pwd的@Test指定要查pwd,这样是可以查出来的。
2024-08-26 23:03:46 590
原创 SpringBoot整合Mybatis,Junit (复现之前写的一个SSM项目)
SpringBoot已经把Spring SpringMvc相关的事情都帮我们做好了,web相关,mybatis的起始依赖我们创项目的时候已经导入 ,我们只需要导入自己项目中额外添加的依赖。把mapper文件夹里面的所有mapper接口上面的@Repository注解换成@Mapper注解,@Mapper可以让SpringBoot扫描到它,并生成它的动态代理对象。如下是之前写的一个SSM项目(纯注解版),现在我们要把它改造成一个SpringBoot项目,以体现SpringBoot的方便。
2024-08-24 20:18:22 1054
原创 SpringBoot配置相关(yml文件,多环境配置...)
YAML(YAML Ain't Markup Language),一种数据序列化格式。YMAL文件扩展名.yml(主要用这个).yaml语法规则1.大小写敏感2.属性层级关系使用多行描述,每行结尾使用冒号结束3.使用缩进表示层级关系,同层级左侧对齐,只允许使用空格(不允许使用Tab键)。空格的个数并不重要,只要保证同层级的左侧对齐即可。4.属性值前面添加空格(属性名与属性值之间使用冒号+空格作为分隔)5. # 表示注释。
2024-08-24 14:30:16 1332
原创 maven进阶(超详细)
将抽取后的项目进行运行,测试之前的增删改查功能依然能够使用。所以对于项目的拆分,大致会有如下几个步骤: (1) 创建Maven模块 (2) 书写模块代码 分模块开发需要先针对模块功能进行设计,再进行编码。不会先将工程开发完毕,然后进行拆分。拆 分方式可以按照功能拆也可以按照模块拆。(3)通过maven指令安装模块到本地仓库(install 指令)感觉和git一个作用啊???
2024-08-21 23:34:30 1172
原创 会话跟踪方案:Cookie Session Token
以登录为例,用户在浏览器中将账号密码输入并勾选自动登录,浏览器发送请求,请求头中设置Cookie:userName:'张三' ,password:'1234aa' ,若登录成功,服务器将这个cookie保存下来,后续用户登录,服务器向客户端(即浏览器)发送之前存储的用户cookie自动登录。
2024-08-21 12:36:17 625
原创 Vue学习 Day03 (hooks和路由)
什么是hook?—— 本质是一个函数,把setup函数中使用的进行了封装,类似于vue2.x中的mixin。自定义hook的优势:复用代码, 让setup中的逻辑更清楚易懂。注意hook的命名规范为: useXxxxxuseSum.tsuseDog.ts。
2024-08-18 00:09:14 724
原创 Vue3学习 Day03
- 父组件App.vue --><template>console.log("父-挂载前")})console.log("父-挂载完成")})</script>
2024-08-17 14:27:53 789
原创 Vue3学习 Day01
先不看其他编码的细节,我们可以大胆猜测HelloWorld.vue被挂到App.vue里面,证实了它是根组件。setup函数有一个语法糖,可以让我们把setup函数从script里面独立出去// 数据(注意:此时的name、age、tel都不是响应式数据)let name = '张三'// 方法name = '李四'//注意:此时这么修改name页面是不变化的age += 1 //注意:此时这么修改age页面是不变化的alert(tel)
2024-08-14 20:49:43 1096
原创 SSM项目 异常处理器,如何处理异常?
/确保SpringMVC的配置类能扫到它//异常处理器@RestControllerAdvice//REST风格的异常处理器//用@ExceptionHandler注解选择要处理的异常类型return new Result(Code.ARITHMETIC_EXP,"出现算术异常",null);//异常细分码。
2024-08-12 12:09:13 691
原创 续多线程.
核心线程----->等待队列----->临时线程@Test//两个核心线程+两个临时线程+长度为2的等待队列2,//核心线程数4,//最大线程数1,//空闲线程最大存活时间TimeUnit.MINUTES,//时间单位new ArrayBlockingQueue(2),//长度为3的等待队列Executors.defaultThreadFactory(),//创建线程工厂new ThreadPoolExecutor.AbortPolicy()//设置拒绝策略:丢弃任务并抛出异常。
2024-08-11 22:14:46 252
原创 多线程&JUC
实现Callable接口可以返回线程执行的结果死锁是指在执行过程中,两个或两个以上的进程(或线程)由于竞争资源或彼此通信而阻塞,导致无法继续执行的情况。如果没有外部干预,这些进程将无法向前推进。这种状态被称为系统死锁或死锁产生。这些相互等待的进程被称为死锁进程。
2024-08-11 16:26:59 799
原创 SSM整合
1.导入我们需要的依赖后,创建文件夹结构2.Spring整合Mybatis写Spring的配置类,加载JdbcConfig获取数据源对象的bean,加载MybatisConfig获取SqlSession的bean和设置mapper映射文件的包扫描3.Spring整合SpringMVC。
2024-08-08 20:22:05 414
原创 Rest风格快速开发
简单点来说,Rest风格的开发就是让别人不知道你在做什么,以deleteUserById和selectUserById为例:普通开发:路径Id=666别人很容易知道你这是在干什么Rest风格开发:无论是查还是删 路径都是/users/1要依靠行为动作(get或delete)才能知道我们在干什么。
2024-08-08 11:40:30 395
原创 SpringMVC (发送请求——>参数传递—— >响应数据)
将请求访问路径和我们业务层的方法联系起来将我们业务层方法的返回值转化为json,xml或其他格式的数据返回给页面。
2024-08-08 01:12:51 432
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人