- 博客(17)
- 收藏
- 关注
原创 redis线程模型
1.c语言实现,效率高。2.纯内存操作。3.基于非阻塞的IO复用模型机制。4.单线程能避免多线程的频繁切换上下文问题。5.丰富的数据结构(采用hash结构,读取速度非常快,对数据存储进行了一些优化,比如压缩表,跳表)。
2023-08-24 19:33:30
325
1
原创 redis缓存问题
缓存穿透是指用户发送查询请求,在缓存中没有拿到数据,于是就去数据库中查询,发现数据库中也没有。数据库也没有数据存到缓存中,当大量请求同时查询数据库时,就会导致缓存穿透。缓存击穿是指当用户查询数据时,查询过期的key时,缓存中没有数据,于是从数据库中查询,当大量并发查询发生时就会导致缓存击穿。缓存雪崩是指多个key同时过期时或者redis宕机,有大量查询发生,缓存中没有数据,就会去数据库中查询。
2023-08-20 20:53:41
204
1
原创 常见sql语句分析
CASE 搜索函数计算一组布尔表达式以确定结果。分析:根据题目要求可以看到需要查询学生信息和课程分数,而学生信息在student表中,课程分数在score表中,这两个表都有s_id这一列,于是可以根据s_id对这两个表进行表连接。使用order by,一般是用来,依照查询结果的某一列(或多列)属性,进行排序(升序:ASC;例:第5题(count(col)求总数,sum(col)求和),第三题(avg(col)求平均值)这里使用到了别名(as可省略),和表连接(join),连接条件是两个表都有的列的值相等。
2023-08-11 20:05:54
663
1
原创 Spring解决循环依赖
Spring通过三级缓存解决了循环依赖,其中一级缓存为单例池(singletonObjects),二级缓存为早期曝光对象earlySingletonObjects,三级缓存为早期曝光对象工厂(singletonFactories)。使用构造方法的方式来注入依赖,并且类A中依赖类B,类B也同时依赖类A,这样两个类都无法正常进行Bean的创建,就会抛出异常:BeanCurrentlyInCreationException。又开始初始化进程,但是在初始化的过程中发现自己依赖。初始化的时候,发现自己依赖对象。
2023-08-04 13:08:54
243
1
原创 SpringMVC拦截器
SpringMVC拦截器(Interceptor)实现对每一个请求处理前后进行相关的业务处理,类似与servlet中的Filter。SpringMVC 中的Interceptor 拦截请求是通过HandlerInterceptor来实现的。这里定义一个类,实现Spring的HandlerInterceptor接口。@OverrideSystem.out.println("对不起,拦截了你");
2023-07-23 12:54:48
52
原创 简单介绍代理模式
优点:可以做到不对目标对象进行修改的前提下,对目标对象进行功能的扩展和拦截。缺点:1. 因为代理对象,需要实现与目标对象一样的接口,会导致代理类十分繁多,不易维护,2. 同时一旦接口增加方法,则目标对象和代理类都需要维护。3.存在重复代码4.硬编码在代理类中,后期不易维护使用动态代理,让我们避免手写代理类,只要给getProxy()方法传入target就可以生成对应的代理对象。但是日志打印仍是硬编码在invoke()方法中。虽然修改时只要改一处,但是别忘了“开闭原则”。
2023-07-16 17:39:15
226
1
原创 java单例模式
定义:单例模式(Singleton)指一个类只有一个实例,并且该类能自行创建这个实例的一种模式。例如,Windows 中只能打开一个任务管理器,这样可以避免因打开多个任务管理器窗口而造成内存资源的浪费,或出现各个窗口显示内容的不一致等错误。单例类只有一个实例对象;该单例对象必须由单例类自行创建;单例类对外提供一个访问该单例的全局访问点;
2023-07-09 15:36:12
4247
1
原创 学习mybatis中遇到的几个bug
以上的问题产生的最主要的原因还是刚学基础不够扎实,在解决后加深对这些问题的印象,对于我以后的代码编写也起到了很大的帮助。加深了对于基础知识点的理解。
2023-06-29 17:11:11
489
1
原创 vue组件及注册
官方定义:组件(Component)是 Vue.js 最强大的功能之一。组件可以扩展 HTML 元素,封装可重用的代码。在较高层面上,组件是自定义元素, Vue.js 的编译器为它添加特殊功能。在有些情况下,组件也可以是原生 HTML 元素的形式,以 is 特性扩展。组件机制的设计,可以让开发者把一个复杂的应用分割成一个个功能独立组件,降低开发的难度的同时,也提供了极好的复用性和可维护性。
2023-05-30 23:55:09
845
1
原创 jsp 四大域对象的有效范围
通过运行scope1.jsp,加上了跳转后,可以看到4大域的值除了pageContext都在浏览器上显示了出来,这就说明了pageContext只在当前 jsp 页面范围内有效,一旦跳转到了别的页面后就没有值了。通过运行scope1.jsp,使用重定向跳转后,可以看到4大域的值只有session和application的值在浏览器上显示了出来,这就说明了request只在一次请求内有效。通过运行scope1.jsp,可以看到4大域的值都在浏览器上显示了出来。最后我们再次启动web工程,4大域的值都消失了。
2023-05-12 16:44:25
456
原创 xml知识介绍
1.编写XML:声明XML文档,并且必须出现在文档的第一行,最简单的语法: <?用encoding属性说明文档所使用的字符编码,默认为UTF-8。
2023-04-27 21:29:29
230
原创 嗖嗖移动业务大厅项目总结
这是通过自己的努力实现的第一个项目,同时也将是我程序生涯的开头。还用到了java中的属性,方法,集合,接口,随机数,if语句,switch语句,while循环等,涉及到的知识面相当广泛。在编写的过程中也出现了一些结构上的问题,并且重新去组织思路,还有一些标点符号的错误,最难写的就是命名,命名不规范对于自己查看代码也非常困难。首先我们查询电话的套餐类型,对应使用场景,在使用之前我们先判断卡里的余额是否为正,卡里有钱时我们才能使用,当我们使用超出套餐余量时,就会扣除相应的费用,当卡里余额不足时就会禁止使用。
2023-04-22 22:59:54
1262
1
原创 Java文件输入输出练习(实现文件复制、文件读写等)
二,格式模版保存在文本文件pet.template中,要求按照模板格式保存宠物数据到文本文件,即把{name}、{type}、{master}替换为具体的宠物信息。2,将文件(a.txt)中的内容复制到文件(b.txt)中。1,事先准备好的文件(a.txt)。一,实现文件内容的复制。
2023-03-31 15:22:55
846
原创 定义3名学生,循环接收3名学员的java成绩和姓名,输出java成绩最好的学生的成绩和姓名
定义3名学生,循环接收3名学员的java成绩和姓名,输出java成绩最好的学生的成绩和姓名
2023-03-24 22:59:15
579
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人