- 博客(642)
- 资源 (41)
- 收藏
- 关注
原创 RocketMQ面试题
类比一下我们生活的邮政系统——邮政系统要正常运行,离不开下面这四个角色, 一是发信者,二 是收信者, 三是负责暂存传输的邮局, 四是负责协调各个地方邮局的管理机构。对应到 RocketMQ 中,这四个角色就是 Producer、 Consumer、 Broker 、NameServer。在操作系统中,使用传统的方式,数据需要经历几次拷贝,还要经历用户态/内核态切换。从磁盘复制数据到内核态内存;从内核态内存复制到用户态内存;然后从用户态内存复制到网络驱动的内核态内存;
2024-02-18 16:02:06 740
原创 计算机网络面试题
为什么不能是两次?为了防止服务器端开启一些无用的连接增加服务器开销防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误。由于网络传输是有延时的(要通过网络光纤和各种中间代理服务器),在传输的过程中,比如客户端发起了 SYN=1 的第一次握手。如果服务器端就直接创建了这个连接并返回包含 SYN、ACK 和 Seq 等内容的数据包给客户端,这个数据包因为网络传输的原因丢失了,丢失之后客户端就一直没有接收到服务器返回的数据包。
2024-02-18 15:52:51 1084
原创 操作系统面试
可以这么说,操作系统是一种运行在内核态的软件。它是应用程序和硬件之间的媒介,向应用程序提供硬件的抽象,以及管理硬件资源。可以这么说,内核是一个计算机程序,它是操作系统的核心,提供了操作系统最核心的能力,可以控制操作系统中所有的内容。内核空间,这个内存空间只有内核程序可以访问;⽤户空间,这个内存空间专⻔给应⽤程序使⽤,权限比较小;⽤户空间的代码只能访问⼀个局部的内存空间,⽽内核空间的代码可以访问所有内存空间。因此,当程序使⽤⽤户空间时,我们常说该程序在⽤户态执⾏,⽽当程序使内核空间时,程序则在内核态。
2024-02-18 15:33:09 972 1
原创 Mysql面试
内连接(inner join):取得两张表中满足存在连接匹配关系的记录。外连接(outer join):不只取得两张表中满足存在连接匹配关系的记录,还包括某张表(或两张表)中不满足匹配关系的记录。交叉连接(cross join):显示两张表所有记录一一对应,没有匹配关系进行筛选,它是笛卡尔积在 SQL 中的实现,如果 A 表有 m 行,B 表有 n 行,那么 A 和 B 交叉连接的结果就有 m*n 行。
2024-02-18 15:21:58 804
原创 MyBatis面试题
先吹一下Mybatis 是一个半 ORM(对象关系映射)框架,它内部封装了 JDBC,开发时只需要关注 SQL 语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement 等繁杂的过程。程序员直接编写原生态 sql,可以严格控制 sql 执行性能,灵活度高。MyBatis 可以使用 XML 或注解来配置和映射原生信息,将 POJO 映射成数据库中的记录,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。再说一下缺点。
2024-02-18 09:17:13 797
原创 Spring面试
Java 是面向对象的编程语言,一个个实例对象相互合作组成了业务逻辑,原来,我们都是在代码里创建对象和对象的依赖。所谓的IOC(控制反转):就是由容器来负责控制对象的生命周期和对象间的关系。以前是我们想要什么,就自己创建什么,现在是我们需要什么,容器就给我们送来什么。引入IOC之前和引入IOC之后也就是说,控制对象生命周期的不再是引用它的对象,而是容器。对具体对象,以前是它控制其它对象,现在所有对象都被容器控制,所以这就叫控制反转。控制反转示意图DI(依赖注入)
2024-02-01 17:32:26 1109
原创 Redis面试
Redis图标Redis是一种基于键值对(key-value)的NoSQL数据库。比一般键值对数据库强大的地方,Redis中的value支持string(字符串)、hash(哈希)、 list(列表)、set(集合)、zset(有序集合)、Bitmaps(位图)、 HyperLogLog、GEO(地理信息定位)等多种数据结构,因此 Redis可以满足很多的应用场景。而且因为Redis会将所有数据都存放在内存中,所以它的读写性能非常出色。
2024-02-01 17:30:12 724
原创 Java 虚拟机
JVM——Java 虚拟机,它是 Java 实现平台无关性的基石。Java 程序运行的时候,编译器将 Java 文件编译成平台无关的 Java 字节码文件(.class),接下来对应平台 JVM 对字节码文件进行解释,翻译成对应平台匹配的机器指令并运行。同时 JVM 也是一个跨语言的平台,和语言无关,只和 class 的文件格式关联,任何语言,只要能翻译成符合规范的字节码文件,都能被 JVM 运行。内存分配有两种方式,指针碰撞空闲列表。
2024-02-01 17:00:37 1093
原创 Java并发编程
要说线程,必须得先说说进程。进程:进程是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。线程:线程是进程的一个执行路径,一个进程中至少有一个线程,进程中的多个线程共享进程的资源。操作系统在分配资源时是把资源分配给进程的, 但是 CPU 资源比较特殊,它是被分配到线程的,因为真正要占用CPU运行的是线程,所以也说线程是 CPU分配的基本单位。比如在Java中,当我们启动 main 函数其实就启动了一个JVM进程,而 main 函数在的线程就是这个进程中的一个线程,也称主线程。
2024-02-01 16:58:25 953
原创 中学综合素质复习
一定的标准在价值体系中的地位是确定的,较低的价值则应从属于较高的价值准则,较小的标准应取决于较大的标准。在学校场域中,教师通常是威严的知识传授者,当教师回到家中面对自己的子女时,会有意或无意地“摆出”教师的威严,较少以父母的角色、情感态度来积极地差别化对待自己的孩子,或者因学校教育工作重而忽视对自身子女的教育。“以人为本”的学生观要求教师要用发展的眼光去看待学生,坚信每个学生都是可以积极成长的,是有培养前途的,不能因为学生的小错误就将学生的潜能完全否定,要看到学生未来的发展潜力,要帮助学生更好的发展。
2024-02-01 16:49:32 1085
原创 Java集合框架面试
将元素放在table数组上面,是用hash值%数组大小定位位置,而HashMap是用hash值&(数组大小-1),却能和前面达到一样的效果,这就得益于HashMap的大小是2的倍数,2的倍数意味着该数的二进制位只有一位为1,而该数-1就可以得到二进制位上1变成0,后面的0变成1,再通过&运算,就可以得到和%一样的效果,并且位运算比%的效率高得多。get也很简单,key通过hash定位到segment,再遍历链表定位到具体的元素上,需要注意的是value是volatile的,所以get是不需要加锁的。
2024-01-06 08:44:55 1112
原创 Java SE面试
Java 是一门面向对象的编程语言,不仅吸收了 C++语言的各种优点,还摒弃了 C++里难以理解的多继承、指针等概念,因此 Java 语言具有功能强大和简单易用两个特征。Java 语言作为静态面向对象编程语言的优秀代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。所谓跨平台性,是指 Java 语言编写的程序,一次编译后,可以在多个系统平台上运行。
2024-01-06 08:23:35 1056
原创 String与Timestamp互转
而java.sql.Date是java.util.Date的一个子类,专门用于与数据库交互时存储日期。时间精度:java.util.Date可以保存日期和时间的毫秒级精度,而java.sql.Date只保存日期的精度,时间部分被设置为午夜(00:00:00)。总结来说,java.sql.Date适用于与数据库交互时只需要保存日期部分的情况,而java.util.Date则适用于通用的日期和时间处理。java.sql.Date和java.util.Date是Java中表示日期和时间的两个类,它们有一些区别。
2023-12-27 11:05:00 598
原创 Typora使用PicGo+Gitee上传图片报错403 Forbidden
使用PicGo+Gitee上传图片,上传失败了,错误信息如下。打开PicGo的日志文件查看,可以看到错误详情如下。重新配置,解决了这个问题。
2023-12-26 17:37:45 663
原创 Typora配置gitee图床踩坑记录:“success“:false,“message“:“upload error或者picgo 错误:repo name解决方法
该是说出现了**“message”:"upload error**这个问题,然后要去picgo的日志(log)里面去看一下错误原因。在设置仓库名的时候,格式是【用户名】/【仓库】,而我只写了仓库的名称,,就这样就解决了。建议,还是仔细看下对应目录下的日志。名称,,就这样就解决了。
2023-12-26 17:31:36 695
原创 Typora使用PicGo+Gitee上传图片
点击PicGo-Setup-2.3.0-x64.exe (64位安装)然后打开gitee(没注册先注册)
2023-12-26 17:26:53 576
原创 @RequestMapping注解中produces和consumes属性
通俗来说,在http协议中,用来表示传输内容的格式就是MediaType,比如text/html,application/json等,其中text代表介质,html代表格式。例3:当配置produces()属性的时候,如果未设置Accept请求头,那么默认就是*/*,会根据produces属性来输出响应头的Content-Type。例2:当配置produces()属性的时候,需要Accept与配置的属性兼容,否则会抛出406或415异常。功能2:默认会把produces中配置的内容写到响应头的。
2023-12-26 16:58:33 2219
原创 Java中的bigDecimal的类型小数点后的0如何补全
BigDecimal类在高精度计算场景下具有很强的优势,能够保证计算精度不会丢失。在需要进行货币、分数、科学计算等场景时,常常会用到BigDecimal类。对于需要保留两位小数舍去后面的情况,BigDecimal类提供了很多种不同的舍入方式。开发人员可以根据实际需求选取合适的舍入方式,达到精确计算的效果。
2023-12-25 11:07:56 1007
原创 git命令查看提交代码行数和次数
指定时间内有代码提交记录人的 --since=2022–09-01 --until=2022-10-01 代码提交行数。所有人指定时间内 --since=2022–09-01 --until=2022-10-01 代码提交行数。所有人指定时间内 --since=2022–09-01 --until=2022-10-01 代码提交行数。指定.vue文件 | grep '.vue'右键点击Git Bash Here。
2023-12-19 14:15:49 1294
原创 switch case结合枚举值使用的问题
未使用枚举类代码前,想要把什么东西都写死在代码里然后结合了switch case后理想效果应当如下但是出现了如下问题:在case分支判断那里需要声明常量(需要在编译时被指定/避免二义性,balabala,这个地方为什么不能使用枚举类型获取值,个人感觉和JVM加载顺序有关,然后查了查,有说法是因为需要在编译时进行类型检查,编译的时候就应该指定,运行时候知道是什么值),这样的话,就需要对枚举类进行改造,才能在switch case中使用枚举类进行分支判断。
2023-12-18 14:11:19 1149
原创 Stream流中anyMatch和allMatch和noneMatch的区别
allMatch里面不适合写 && ,只适合写 ||,如果写&&,编译器会自动报黄色波浪线。
2023-12-16 18:06:30 1069
原创 java stream的常见操作
假设有 Student 类,里面含有 id、name、score 等信息。假设有Student类,里面含有id、name、score等信息。假设有 Student 学生类,里面含有 id、name、score 等信息。上面是流里面使用 max、min、average 、reduce 方法获取数组的最大、最小值、平均值,求和。首先需要将该字符串转换为数组,接下来需要过滤掉非整数元素,最后,将该数组的剩余元素转换为数字并求和。除了上面的方法还可以像下面这样获取最大值、最小值、平均值,求和。
2023-12-16 17:54:04 1828
转载 Java Optional基本操作
Java 9引入了 or() 方法,or 操作与 orElse 和 orElseGet 操作相似,只不过 or 操作返回的是一个新的Optional 对象,而 orElse 和 orElseGet 操作返回的是 Optional 中的值。1.无论 Optional 中的值是否为空 orElse 中的代码都会执行,而 orElseGet 中的代码只有 Optional 中的值为空才会执行。ofNullable 接收的值可以是 null,不会报空指针异常,但如果接收的值是是 null,在使用。
2023-11-24 09:53:36 378
原创 软件设计师做题技巧(下午题)
3 抽象类abstract class 里方法没有方法体,要加abstract关键字,有方法体就不用;接口interface里的方法不需要用publc修饰**,**也不用加abstract 修饰。如何保持数据流图平衡:子图的输入/输出数据流必须与其父图对应加工的输入/输出流保持一致。4 子类使用父类的属性和方法都不需要加this和super,千万不能加。:先把属性写出来,然后写这个表的主键和外键分别是什么。黑洞是指只有数据输入、没有数据输出的数据加工;补全用例图:用例图中椭圆部分中的是动作描述。
2023-10-29 15:40:10 1079
原创 2022年上半年上午易错题(软件设计师考试)
28.已知树T的度为4,且度为4的结点数为7个、度为3的结点数5个、度为2的结点数为8个、度为1的结点数为10个,那么T的叶子结点个数为( )。27.对长度为n的有序顺序表进行折半查找(即二分查找)的过程,可用一棵判定树表示,该判定树的形态符合( )的特点。5.某计算机系统构成如下图所示,假设每个软件的千小时可靠度R为0.95,则该系统的小时可靠度约为( )。26.以下关于散列表(哈希表)及其查找特点的叙述中,正确的是( )。30.某图G的邻接表中共有奇数个表示边的表结点,则图G( )。
2023-10-29 14:58:19 166
原创 2021年上半年上午易错题(软件设计师考试)
63.最大尺寸和问题描述为,在n个整数(包含负数)的数组A中,求之和最大的非空连续子数组,如数组A= (-2, 11, -4,13, -5,-2) ,其中子数组B= (11, -4, 13)具有最大子段和20 (11-4+13=20)。以下UML状态图中,假设活动的状态是A,事件b=0发生并a>5 发生条件是C状态到D状态转换条件的是(B),D变为活动的状态,有关状态图的叙述中,不正确(D)。若了解问题的解空间,并以广度优先的方式搜索解空间,则采用的是(D)算法策略。
2023-10-29 10:59:58 188
原创 2017年上半年上午易错题(软件设计师考试)
某软件项目的活动图如下图所示,其中顶点表示项目里程碑,连接顶点的边表示包含的活。在高级语言源程序中,常需要用户定义的标识符为程序中的对象命名,常见的命名对象有。),两条装配线对应的工位完成同样的加工工作,但是所需要的时间可能不同(有相同的程序块,块内的语句之间没有任何联系,现把改程序块取出来,形。个工位的最短时间,该问题具有重复子问题的性质,故采用迭代方法求。现在要以最快的时间完成一辆汽车的装配,求最优的装配路线。在进行软件开发时,采用无主程序员的开发小组,成员之间相互平等。此模式体现的最主要的特征是。
2023-10-29 08:54:06 243
原创 2016年下半年上午易错题(软件设计师考试)
成本估算时,( )方法以规模作为成本的主要因素,考虑多个成本驱动因子。( )模式将一个复杂对象的构建与其表示分离,使得同样的构建过程可以创 建不同的表。该软件的开发最不适宜采用( )模型,主要是因为这种模型( )。方式的数字音乐合成器中,改变数字载波频率可以改变乐音的( ),改变它的信号。以下关于二叉排序树(或二叉查找树、二叉搜索树)的叙述中,正确的是( )。.从根到任意一个叶子结点的路径上,结点的关键字呈现有序排列的特点。数用补码表示,则该浮点数所能表示的数值范围是( )。
2023-10-29 08:35:13 172
原创 2016年上半年上午易错题(软件设计师考试)
B.若要查找的元素等于 A[9],则分别需与 A[7]、A[11]、A[9]进行比较。归约分析法是编译程序(或解释程序)对高级语言源程序进行语法分析的一种方法,若此为部分背包问题,首先采用归并排序算法,根据物品的单位重量价值。.外模式与内模式之间的映像、模式与内模式之间的映像。.外模式与内模式之间的映像、外模式与模式之间的映像。D.模式与内模式之间的映像、外模式与模式之间的映像。的顺序进入一个初始为空的栈中,每个元素进栈、出栈各。.外模式与模式之间的映像、模式与内模式之间的映像。
2023-10-29 08:19:08 208
原创 2023年上半年上午易错题(软件设计师考试)
设函数foo和hoo的定义如下图所示,在函数foo中调用函数hoo,hoo的第一个参数采用传引用方式(call by reerence),第二个参数传值方式(call by value),那么函数foo中的print(a, b)将输出 (22)。利用栈对算术表达式10 * (40 – 30 / 5) + 20求值时,存放操作数的栈(初始为空)的容量至少为 (57) ,才能满足暂存该表达式中的运算数或运算结果的要求。计算机系统中,定点数常采用补码表示,以下关于补码表示的叙述中,错误的是 (5)。
2023-10-28 20:26:17 458
原创 2022年下半年上午易错题(软件设计师考试)
选项:[{"A":"分治","B":"动态规划","C":"贪心","D":"回溯"},{"A":"29/10和29/11","B":"30/10和30/11","C":"29/10和39/11","D":"30/10和40/11"}]选项:[{"A":"分治法","B":"动态规划","C":"贪心算法","D":"回溯法"},{"A":"5","B":"6","C":"7","D":"9"}]题目:采用Dijkstra算法求解下图A点到E点的最短路径,采用的算法设计策略是( )。
2023-10-28 15:42:14 682
原创 使用Oracle实现完美的不重复随机数(oracle不重复随机数
为了解决这个问题,我们可以使用Oracle的随机数生成函数来生成不重复的随机数。在这个SQL语句中,我们使用了Oracle的DBMS_RANDOM.VALUE函数来生成一个1到1000000之间的随机数,并使用TRUNC函数将其转换为整数。我们还使用了Oracle的CONNECT BY LEVEL语句来生成一个由1到1000000递增的数字序列,最终得到了1000000个不重复的随机数。我们可以使用Oracle自带的序列来生成不重复的连续整数值,也可以使用Oracle的随机数生成函数来生成不重复的随机数。
2023-09-18 17:11:05 2569
软件设计师复习资料大全
2023-06-09
java 1.8安装
2020-12-09
Java知识点复习.docx
2020-06-14
Unix&Linux资料.zip
2020-05-08
Linux&vim常见命令.zip
2020-05-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人