- 博客(19)
- 收藏
- 关注
原创 缓存的常见问题
缓存就是数据交换的缓冲区(称作:Cache),当某一硬件要读取数据时,会首先从缓存汇总查询数据,有则直接执行,不存在时从内存中获取。查询缓存是数据库的一项较为重要的功能,但是由于缓存的命中率低和增、删、改操作的增加,缓存中的数据要全部删除并更新,加大了数据库的压力。因此,在mysql8.0之后,取消了查询缓存这项功能。由于实际开发中数据库的查询压力会很大,因此我们选择第三方的缓存数据库来存储热点数据,从而减轻数据库的压力,我们常用的缓存数据库是redis。
2023-08-24 23:51:57
311
1
原创 token的认证
JWT就是通过json格式作为Web应用程序中的令牌,用于在各方之间安全地将信息以JSON的形式传输,在数据传输过程中.还可以对数据进行加密,签名等相关处理。
2023-08-20 22:08:26
1134
1
原创 CAP原则和BASE理论
CAP原则又称CAP定理,指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性)这三个基本需求,最多只能同时满足其中的2个。BASE 是 Basically Available(基本可用) 、Soft-state(软状态) 和Eventually Consistent(最终一致性)。
2023-08-04 11:54:52
202
1
原创 SSM框架整合
先配置全局注解扫描;基本的配置如上述所展示的,还可以配置其他的配置,如拦截器的配置、文件上传的配置等。spring的全局配置文件可以把里面的配置分类,另外创建xml文件来配置,并把配置完的xml文件使用import标签在spring全局配置文件中进行导入,如事务管理的配置、mybatis的配置等,这里我把mybatis的配置和事务配置分离出来。mybatis的全局配置文件中不用添加配置,因为整合时,把其中的配置并入了spring的全局配置文件中,mybatis的全局配置文件可以删除,也可以保留,推荐保留。
2023-07-28 22:21:44
65
1
原创 Spring配置
在一个javaBean的创建之后, 与销毁之前,自定义方法进行相关操作,<bean>标签中提供两个属性:init-method: 初始化方法方法名;destroy-method: 销毁之前的方法方法名, 释放资源。spring根据bean的需求(依赖),自动给属性注入值, 在bean标签使用autowire属性开启自动装配。1.根据名字匹配需求 byName bean的name与set方法后面除set之后的方法名字。(3)进行工厂bean配置, 实例bean配置。(2)提供一个创建对象的静态方法。
2023-07-23 21:59:50
188
1
原创 return的执行顺序
程序运行,先执行main函数,调用test()函数,先执行try中的语句,执行输出函数,结果为2,再执行int val 1/0,有异常,直接跳到catch中,执行输出语句,结果为2,再执行return中语句,结果为3,先不返回,把结果保存到临时栈中;程序运行,先执行main函数,调用test()函数,先执行try中的语句,执行输出函数,结果为2,再执行int val = 1/0,有异常,跳到catch中执行输出函数,结果为2,再执行return中的语句,结果为3,先不返回,将结果保存到临时栈中;
2023-07-16 22:53:15
635
1
原创 IOC和DI
IOC和DI都是把要手动创建的对象交给spring容器管理(创建),无需手动创建对象,它们是同一个概念的不同角度描述,IOC使用时,通过getBean方法去获取bean对象,而DI通过依赖注入,在使用时,由spring容器自动注入。它们利用依赖关系注入的方式,实现对象之间的解耦。
2023-07-07 15:34:12
255
1
原创 cookie和session
cookie是服务器发送到用户浏览器并保存在本地的一小块数据,它会在浏览器下次向同一服务器再发起请求时被携带并发送到服务器上。session是一种记录客户状态的机制,客户端访问服务器时,服务器把客户端信息以某种形式记录在服务器上。(1)区别:①cookie数据存放在客户端,session数据放在服务器上。②cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session。
2023-06-28 21:19:57
425
1
原创 构造函数、类的继承和接口的实现
构造函数名与所在类的类名相同,无返回值(如:void、int等),可以带参数。//无参构造函数//带参构造函数继承就是子类继承父类的特征和行为,使子类对象具有父类的实例域和方法,类的继承是单继承,但可以是多层继承的。Java接口(Interface),是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征,没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
2023-05-30 17:49:04
636
1
原创 JS和JAVA中的数组
(1)静态初始化//数据类型 数组名称[] = {值列表}(2)动态初始化//数据类型 数组名称[] = new 数据类型(数组长度)let 数组名称 = [数据1,数据2,...]数组中可以是任意类型的数据Java中的数组与JS中的数组的取值、修改、遍历都是相同的,只有定义的是有区别的,JS中定义要用关键词let,数组内可以存放任何类型的数据。同时,Java中的常用方法和JS中的常用方法大致相同,只有小部分有区别。
2023-05-19 13:00:11
473
1
原创 Tomcat的自定义与使用
创建lib文件夹,导入dom4j-1.1.jar包和log4j-1.2.12.jar包,创建日志工具类MyLogger在类中创建开启服务器方法,在方法中实现服务器的开启,接着用while(true)循环实现不中断地使用服务器,且在方法中实现多线程的开启。start();try {MyLogger.log("服务器已启动");System.out.println("连接成功");//启动线程}finally {= null) {try {
2023-05-04 23:21:08
790
原创 Java与JavaScript中的变量定义与数据类型
Java和JS都遵循以下规则:(1)只能由字母、数字、下划线和$组成;(2)不能以数字开头;(3)区分大小写。不同的是,Java中不能包含的关键字,如public、class、static等;JS中不能包含关键字,如let、var等。(1)JavaJava中定义变量为//第一种方式:数据类型 变量名称;变量名称 = 值int number;//第二种方式:数据类型 变量名称 = 值Java中,你要使用什么类型的数据,你每次只能定义一种数据类型的数据。JS中变量定义为。
2023-04-27 22:08:35
443
原创 嗖嗖移动业务大厅
嗖嗖移动业务大厅包括用户登录、用户注册、使用嗖嗖、话费充值、资费说明、退出系统、本月账单查询、套餐余量查询、打印消费详情、套餐变更、办理退网十一个基本功能。其分为两个菜单,一个是主菜单,一个为二级子菜单。主菜单包括用户登录、用户注册、使用嗖嗖、话费充值、资费说明、退出系统。用户输入正确的账号和密码登录后,进入二级子菜单,二级子菜单包括本月账单查询、套餐余量查询、打印消费详单、套餐变更、办理退网。2.1 用户登录(1)功能介绍输入正确的手机号码和密码进入二级菜单列表;(2)代码。
2023-04-22 23:28:34
1762
原创 Java中的IO流
(1)文件不存在时,输入流不能为用户创建文件,输出流能为用户创建文件;(2)字节流不用关闭流可以正常运行程序,而字符流不能在不关闭流的情况下运行程序,一般来说,用完流后,关闭流是程序员的好习惯;(3)通常使用的流为字节流,只有使用特殊符号等时会用到字符流;(4)字节流可以转换为字符流,这里使用到转换流;(5)数据较小时,可以使用字节流或者字符流,当数据很大时,使用缓冲流效率更高。
2023-04-08 00:16:33
147
原创 自定义ArrayList
2.解决思路:先创建一个自定义链表的类,创建原始数组,定义静态的初始长度为常量,定义实际长度,定义构造函数包含数组长度和实际初始长度。然后定义扩容函数,接着定义两个参数不同的增加元素方法,定义获取元素的方法,最后定义测试类,在main方法中增加元素、获取元素、获取链表长度并输出。该方法的形式为:arraycopy(Object src,int srcPso,Object dest,int destPos,int length),该方法为把一个数组的元素移到另外一个数组中。destPos为复制的开始元素;
2023-04-01 13:30:37
163
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人