VirtualBox 和 Vagrant 快速安装 Centos7 报错
VirtualBox 和 Vagrant 快速安装 Centos7 报错今天尝试用 VirtualBox 和 Vagrant 快速安装 Centos7,BUG 多多!
1)下载 6.1.26 版本 VirtualBox,Windows11 不兼容???什么鬼?
解决方法:换 6.1.44 版本了,好像是 6.1.28 以上修复了 Windows11 不能安装 Oracle 的 VirtualBox 的 BUG,7.0.0版本以上貌似修复了更多 BUG,我这边暂时用的 6.1.44版本。
2)使用 Vagrant init centos/7,然后 Vagrant up 疯狂报错。
2.1)第一个错误,由于国内连不上国外服务器,拉取不了,我直接到官网,在线下了个 .box 文件,然后利用 Vagrant box add 名称 文件路径即可完成添加。千万别放中文路径!!!否则 GG !
2.2)第二个错误
incompatible character encodings: gbk and utf-8 (encoding::compatibilityerror)
???又是问号,搜 ...
设计模式读书笔记第一期
设计模式读书笔记第一期工厂模式工厂模式大致结构
图中实现了一个计算器的功能
Operation为抽象父类,Sub,Add两个子类去继承抽象父类,然后实现抽象父类的方法,抽象父类的方法可以是有实现的方法,因此我这边用了一个具体实现的方法,写成抽象方法也可以,但子类就需要必须实现了,而非抽象方法不一定要实现,我这种只写了两个功能,4个功能也是一样的,为了篇幅减少一下。
OperationFactory作为一个简单的工厂,接受字符串,然后再给予相对应的实现子类的实例对象。比如你写”+”,就对应new Add()。
工厂的具体实现方法public class OperationFactory { public static Operation createOperate(String operate){ Operation op = null; switch (operate){ case "+": op = new Add(); ...
2023年上半年学习规划
2023年上半年学习规划1.已学技术栈和获奖情况目前大二下学期,我是从大一下学期开始学习Java,上半学期学了C语言,然后去C语言网刷了大概200-300题,然后大一上绩点4.0+。大一下学Java,然后看韩老师的JavaSE900集,花了1个半月的时间。然后开始陆续攻克SSM框架,SpringBoot框架等等。
技术栈:
前端: Vue2和Vue3+TS,组件库ElementUi,Ant Design Pro,React也学习过,大多数都忘了,因为没做过完整项目。
后端:SSM,SpringBoot,MP,SpringCloud
消息队列: RabbitMq
搜索引擎:ES
部署: Docker 和 宝塔 (Vercel其次)
缓存: Redis
数据库:MySQL
分布式版本控制: Git
后端包管理: Maven
前端包管理: Npm,Yarn
获奖情况:
没参加过挑战者杯,互联网+,感觉是PPT大赛,而且没人带,我喜欢做技术,做PPT和Word当主负责人感觉会很累。
四六级考过 计算机二级(随便考的)
2.学习计划
备考软件中级(听说不难,刷题就完事)
每日一道力扣+复 ...
Redis学习笔记(2)
Redis学习笔记☀️1.Redis缓存问题
什么是缓存?
缓存(Cache),就是数据交换的缓冲区,俗称的缓存就是缓冲区内的数据,一般从数据库中获取,存储于本地代码(例如:
例1:Static final ConcurrentHashMap<K,V> map = new ConcurrentHashMap<>(); 本地用于高并发例2:static final Cache<K,V> USER_CACHE = CacheBuilder.newBuilder().build(); 用于redis等缓存例3:Static final Map<K,V> map = new HashMap(); 本地缓存
由于其被Static修饰,所以随着类的加载而被加载到内存之中,作为本地缓存,由于其又被final修饰,所以其引用(例3:map)和对象(例3:new HashMap())之间的关系是固定的,不能改变,因此不用担心赋值(=)导致缓存失效;
为什么要使用缓存?
一句话:因为速度快,好用
缓存数据存储于代码中,而代码运行在内存中, ...
Redis学习笔记(1)
Redis学习笔记☀️1.Redis和传统SQL的区别
存储方式
关系型数据库基于磁盘进行存储,会有大量的磁盘IO,对性能有一定影响
非关系型数据库,他们的操作更多的是依赖于内存来操作,内存的读写速度会非常快,性能自然会好一些
扩展性
关系型数据库集群模式一般是主从,主从数据一致,起到数据备份的作用,称为垂直扩展。
非关系型数据库可以将数据拆分,存储在不同机器上,可以保存海量数据,解决内存大小有限的问题。称为水平扩展。
关系型数据库因为表之间存在关联关系,如果做水平扩展会给数据查询带来很多麻烦
Redis特征:
键值(key-value)型,value支持多种不同数据结构,功能丰富
单线程,每个命令具备原子性
低延迟,速度快(基于内存、IO多路复用、良好的编码)。
支持数据持久化
支持主从集群、分片集群
支持多语言客户端
Redis的官方网站地址:https://redis.io/
☀️2.Redis启动Redis配置后台启动后操作命令
# 启动systemctl start redis# 停止systemctl stop redis# 重启systemctl re ...
jsonFormat注解
JsonFormat注解
1.问题在用Vue的组件库ElementUi的日期时间选择器,datetimepicker,发送给后端请求报400错误,后端用实体类接受参数,日期格式为LocalDateTime类型,本来是可以接受的,但是由于LocalDateTime带T,因此前端会接受到带T的时间格式,不美观,因此,我设置JsonFormat指定后端传输给前端的参数为yyyy-MM-dd HH:mm:ss这个格式。Ok,前端列表格式确实已经改变,但是当日期时间选择器再次发送axios请求时,报400错误,说明方法或者参数类型不匹配,就是加了注解后才不匹配,因此我去ui组件库发现了一个日期时间选择器可以设置的属性。
2.注意事项注意是第二个,我本来设置了第一个,结果卡了好久,我看第一个默认值就是yyyy-MM-dd HH:mm:ss这种,结果它是显示的格式,传值格式是第二个,因为第二个默认是Date类型,指定为yyyy-MM-dd HH:mm:ss就可以了。
问题解决:前端既可以直接收到yyyy-MM-dd HH:mm:ss,后端也可以用LocalDateTime接受,之所以不设置stri ...