- 博客(41)
- 收藏
- 关注
原创 测试开发面试题---计算机网络
客户端首先会检查浏览器缓存,如果没有找到对应的IP地址就会去查询本地域名服务器,如果还没有找到就开始递归查询,本地域名服务器会向根域名服务器进行查询,根域名服务器不会给出IP地址,而是告诉本地域名服务器应该去那个顶级域名服务器查找,本地域名服务器像顶级域名服务器发起查找,顶级域名服务器会返回一个权限域名服务器列表,本地域名服务器任选一个权限域名服务器进行查询。长连接是相对于短链接而言的,短链接是指每次请求都会建立连接,请求完毕后再关闭连接。长连接则是每次请求完毕后不关闭连接,即请求可以复用连接。
2024-07-26 21:17:25 1823
原创 测试开发面试题---Redis
Redis是一个基于键值对的内存数据库,因为是纯内存操作,Redis的性能十分优秀。同时,Redis支持如字符串、哈希、集合等多种数据结构;通过RDB和AOG持久化机制来确保数据不丢失;通过主从复制、哨兵模式和Redis集群避免单点部署从而实现Redis的高可用性。当前,Redis已经被用于计数器、排行榜、消息队列和缓存中。
2024-07-26 15:20:24 779
原创 测试开发面试题---MySQL
索引是数据库管理系统中用于提高数据检索速度的数据结构,它可以帮助快速定位数据不需要扫描全表。提高查询速度;唯一性约束,确保数据不会重复;辅助排序和分组;减少磁盘IO。
2024-07-22 14:36:59 1929
原创 测试开发面试题---JVM
任务完成后,线程会返回空闲状态。首先,Sychronized通过尝试获取偏向锁来竞争资源,如果能竞争到代表加锁成功,如果不行则需要将锁升级为轻量级锁,在轻量级锁状态下线程会根据自旋次数来抢占锁资源,如果还是无法竞争到,会升级到重量级锁,在重量级锁状态下,没有竞争到锁的线程会被阻塞。守护线程:提供辅助功能,主要用于后台任务,它的生命周期取决于用户线程,一旦用户线程执行完毕,JVM会强制退出,所有的守护线程也会退出。非公平锁:不保证线程按照它们申请的顺序获得锁,锁的获取和释放更快,但可能导致线程饥饿。
2024-07-20 17:52:46 871
原创 String
String、StringBuilder和StringBuffer是Java中用于处理字符串的类,它们在性能、线程安全性以及可变性方面有所不同。
2023-08-02 20:38:17 108
原创 Java集合
当你向 HashSet 中添加元素时,HashSet 会根据元素的哈希值计算出其在内部数组中的索引位置。综上所述,选择合适的集合类取决于具体的需求和场景。HashSet底层使用HashMap 添加元素时先得到hash值---转成索引 找到存储数据表,看索引位置是否存放元素----没有直接加入,有则调用equals比较,相同放弃添加,不同则添加在最后。HashSet 和 LinkedHashSet 都是 Java 中的集合类,它们都实现了 Set 接口,用于存储一组无序、不重复的元素。
2023-08-02 11:49:42 100
原创 面向对象理解
通过将复杂的问题分解为对象,每个对象只需关注自身的责任和行为,降低了系统的复杂性,同时也更易于理解、开发和维护。需要注意的是,面向对象并非适用于所有情况,对于简单的、脚本式的任务,可能并不需要使用面向对象的方式。:将数据和方法封装到一个对象中,隐藏内部的实现细节,提供对外公开的接口以便与其他对象交互。:将对象的共同特征提取出来形成类的抽象,通过定义抽象类和接口来实现对对象的抽象描述。类是对象的模板,对象是类的实例。类:一类具有相同属性和行为对象的抽象,定义了对象的状态(属性)和行为(方法)
2023-07-15 20:52:52 99
原创 Java中关键字
抽象类:使用abstract修饰的类称为抽象类。抽象类不能实例化,只能作为其他类的基类。抽象类可以包含抽象方法或者非抽象方法。如果一个类包含抽象方法,那它一定是抽象类。抽象方法:使用abstract修饰的方法。抽象方法没有具体实现,只有方法签名(返回类型,方法名和参数列表)。抽象方法声明在抽象类中,子类必须实现所有继承的抽象方法,除非子类本身是抽象类。
2023-07-15 17:23:25 110
原创 super关键字的使用
我们在通过子类构造器创建对象时,一定在调用子类构造器过程中,直接或者间接调用到父类构造器 。也正因为调用过父类的构造器,我们才会将父类中生命的属性或者方法加载到内存中供子类对象使用
2023-06-20 16:33:21 80
原创 Java-数组
取a-b之间的随机数,int randomNum = (int)(Math.random()*(b-a+1))+a;由多个相同类型按照一定顺序排列的集合,它使用一个名字命名,通过编号的方式对数据进行统一管理。
2023-06-11 10:13:18 50
原创 MySql数据库---day02
1 字段约束在创建数据表的时候,指定对数据表的列的数据限制性的要求(对表的列中数据进行限制)1.1 字段约束的原因保证数据有效性 保证数据完整性 保证数据正确性1.2 字段常见的约束非空约束(not null):限制此列的值必须提供,不能为null 唯一约束(unique):在表中多条数据,此利的值不能重复 主键约束(primary key):非空+唯一,能够唯一标识数据中的一条数据 外键约束(foreign key):建立不同表之间的关联关系
2023-06-09 15:56:43 47
原创 Mysql数据库 -- day01
DDL (Data Definition Language):数据定义语言,用于完成对数据库对象(数据表,视图,索引等进行管理)DML (Data Manipulation Language):数据操作/操纵语言,用于完成对数据表中的数据进行增删改等操作DQL (Data Query Language):数据查询语言,用于完成对数据表中的数据查询操作DCL (Data Control Language):数据控制语言,用于完成事务管理等操作。
2023-05-28 17:12:12 55
原创 SpringBoot中的自动装配
自动装配:自动把第三方组件的Bean装载到IOC容器中,不需要开发人员再去写Bean相关配置。在SpringBoot应用中,只需要在启动类上加上SpringBootApplication注解就可以实现自动装配。Spring Boot的自动装配简化了Spring应用程序的开发和部署过程,可以省去很多繁琐的配置和依赖管理工作,提高开发效率和代码质量。
2023-05-22 09:28:21 145
原创 Shiro框架
Shiro是一个功能强大且易于使用的JAVA安全权限框架,Shiro可以完成:认证、授权、加密、会话管理、与Web集成、缓存等。Shiro 提供了记住我(RememberMe)的功能,比如访问一些网站时,关闭了浏览器,身份验证:一般需要提供如身份ID等一些标识信息来表明登录者的身份,如提供email,用户名/密码来证明。principals:身份,即主体的标识属性,可以是任何属性,如用户名、邮箱等,唯一。credentials:证明/凭证,即只有主体知道的安全值,如密码/数字证书等。
2023-05-18 14:51:19 61
原创 一致性hash算法
首先一致性hash通过hash环的数据结构来实现的(起点是0终点是2的32次方-1),然后我们把数据存储节点的ip地址作为key进行hash之后,回落到hash环上的某一个位置,接下来把存储的目标key使用hash算法计算以后得到hash值同样会落到hash环的某个位置,这个目标key会按照顺时针的方向找到离自己最近的点进行存储。然而当数据量比较大的情况下,我们会把数据存储到多个节点上,通过hash取模的方式来决定把当前的key存储到哪一个节点。
2023-05-16 15:45:33 189
原创 Java-Mybaits
而JavaBean的属性是灵活的,不是必须和哪里对应的。这个依赖中包含了整个这个技术的相关jar包,还包含了这个技术的自动配置,以前绝大多数XML配置都不需要配置了。创建对象的权利,或者是控制的位置,由JAVA代码转移到spring容器,由spring的容器控制对象的创建,就是控制反转。Web项目中的Java文件是tomcat服务器来触发的,脱离了web服务器就无法启动。Spring Boot的启动类的作用是启动Spring Boot项目,是基于Main方法来运行的。实现:实现类对接口的实现,实现规则。
2023-05-16 14:39:12 71
原创 Mysql + JDBC
Maven项目首先去本地仓库找依赖,如果找不到检查是否指定了镜像仓库,如果没指定就去中央仓库,如果指定了就去镜像仓库。Java和Mysql连接六步。
2023-05-14 08:59:46 51
原创 jave-IO流
(EXtensible Markup Language):可扩展标记语言。多线程运行:多线程之间存在资源争抢。图书管理系统(使用IO流。
2023-05-13 08:37:46 61
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人