- 博客(34)
- 收藏
- 关注
原创 Java文档搜索引擎总结
Java文档搜索引擎项目是一个SSM项目,该项目的前端界面部分是由搜索页面和展示页面组成,后端部分索引模块(ScanAnalysis、index)、搜索模块(Searcher)、Web模块(SearcherController)。该项使用ansj第三方分词库进行分词,该项目并没有使用爬虫程序来获取Java文档,而是直接将Java文档下载下来,将Java文档里面的内容进行分词保存到正排索引文件和倒排索引文件中。
2023-03-05 15:12:09
924
1
原创 博客系统总结
博客网站项目是一个SSM项目,项目主要是模仿CSDN博客网站,主要实现了用户登录、用户注册、写博客、删除博客、修改博客、发布博客、查看看博客等功能。使用了第三方工具类hutool实现了登录页面验证码功能,使用加盐算法对用户密码进行加密保存,使用拦截器实现了统一登入验证功能,使用Redis解决了Session持久化问题,通过MyBatis来操作数据库实现了用户注册保存用户信息、写博客保存博客信息等功能。在博客网站中有的页面是可以在没有登录的状态下打开的,有的页面只有在登录的状态下才能打开。
2023-02-15 21:30:14
1903
1
原创 JVM简单介绍
JVM 是 Java Virtual Machine 的简称,意为 Java虚拟机。虚拟机是指通过软件模拟的具有完整硬件功能的、运行在一个完全隔离的环境中的完整计算机系统。常见的虚拟机:JVM、VMwave、Virtual Box。JVM 和其他两个虚拟机的区别:VMwave与VirtualBox是通过软件模拟物理CPU的指令集,物理系统中会有很多的寄存器;JVM则是通过软件模拟Java字节码的指令集,JVM中只是主要保留了PC寄存器,其他的寄存器都进行了裁剪。
2022-12-19 11:03:58
784
1
原创 Spring MVC介绍
Spring MVC 全名是 Spring Web MVC,简称 Spring MVC或者 Spring Web.Spring MVC 是基于Servlet API的web框架,从一开始Spring框架是包含Spring MVC部分,也就是说Spring MVC是Spring 框架的一部分。
2022-12-17 12:17:59
3614
3
原创 Bean的作用域和声明周期
Bean 的作⽤域是指 Bean 在 Spring 整个框架中的某种⾏为模式,⽐如 singleton 单例作⽤域,就表示 Bean 在整个 Spring 中只有⼀份,它是全局共享的,那么当其他⼈修改了这个值之后,那么另⼀个⼈读取到的就是被修改的值。
2022-11-15 19:44:11
896
5
原创 Spring更简单保存和获取bean对象的方法(注解)
原因:不管@Resource注解和 @Autowired注解在注入对象的时候,都会有按照bean对象的id名来匹配,而我们写的变量名就是用来作比较的bean对象的id名。我们在使用@Bean方法注解或者使用xml配置的方法来将对象保存到Spring容器中的时候,很有可以会出现有比较多类型相同,但是bean对象的id名称不同 的情况。@Qualifier注解的作用:用来指定查找id名称是多少的bean对象,@Qualifier注解里面只有一个参数,用来设置用来指定查找id名称。
2022-11-14 11:27:21
1331
4
原创 IP协议的特性
IP协议是TCP/IP体系中网络层的一个协议。在TCP/IP体系中网络层协议主要工作:(1)地址管理(2)路由选择(路径规划)网络层协议中最核心的协议是IP协议【IP协议的协议头图片】【IP协议头各部分属性介绍】4位版本号:当前IP协议的版本,IP协议的版本号有2种,IPV4和IPV66表示IPV6,4表示IPV4四位首部长度:首部长度是指IP协议数据报的报头部分。IP头部的长度是多少个32bit,也就是 length * 4 的字节数。
2022-09-04 22:06:06
1474
3
原创 Java的文件操作
什么是文件?文件这一名词在生活中是比较常见的。比如:在办公场所,我们会使用文件夹来保存我们的资料等一些有用的东西。类似的,在计算机中,文件也是用来保存用户信息的地方。我们办公场所的文件时放到桌子上或者柜子里,同样的计算机的文件也有存放的地方—硬盘。说到硬盘,我有一个问题:请问大家知道内存和硬盘的区别吗?(1)内存的存储空间比较小,硬盘的存储空间比较大(2)内存访问的速度比较快,硬盘访问的速度比较慢(3)内存在电脑电拔掉的情况下,保存在内存的数据会丢失而硬盘是不会丢失数据。...
2022-08-04 22:16:34
1205
4
原创 进程与线程的区别与联系
4)进程与进程间是相互隔离的,也就是说一个进程要是出了问题,其他进程一般是没有什么影响的。而在同一个进程里的线程要是出了问题,其他线程一般是会收到影响,进而导致该进程出现问题。(2)进程有自己的虚拟地址空间和文件描述符表。而在同一个进程里的线程,则是公用相同的虚拟地址空间和文件描述符表。我们说创建进程和销毁进程,效率是比较低的。(3)进程是操作系统资源分配的基本单位。(1)进程包含线程,也就是说线程在进程的里面。进程是一个程序运行时,完成一系列任务的模样。我们可以把线程理解为“轻量级的进程”。...
2022-08-03 14:45:49
158
原创 二叉树最大宽度
题目:在这里插入图片描述思路:把每一个二叉树当作完全二叉树,这里有用到二叉树的一个性质:对于具有n个结点的完全二叉树,如果按照从上至下从左至右的顺序对所有节点从0开始编号,则对于序号为i的结点有: 若i>0,双亲序号:(i-1)/2;i=0,i为根结点编号,无双亲结点若2i+1<n,左孩子序号:2i+1,否则无左孩子若2i+2<n,右孩子序号:2i+2,否则无右孩子我们通过层序遍历二叉树给每一个元素设置序号(序号从0开始),计算并保存每一层的宽度宽度的计算公式:每一层最后
2022-05-15 20:08:58
315
9
原创 力扣之 用队列实现栈(数据结构)
力扣: 用队列实现栈题目:做题思路:题目的要求用两个队列来实现栈的部分功能,队列是 先进先出,二栈是先进后出,两者刚好相反。所以,我们要得到栈顶的值,我们就必须走一遍队列,我们把一个队列的元素放入到另一个队列里就可以实现了,所以,我们在压栈的时候把数值放到有元素的队列中就行了,但是在一开始的时候两个队列都是空的,我们可以将数值随便放入到两个队列中的一个 。我们在出栈的时候,先找到不为空的队列,在将该队列的值方到另一个队列中,这样就可以得到最底下的值,下一次的出栈在重复之前的操作就行了。做题思路大概
2022-05-12 21:46:18
294
4
原创 数据结构之栈和队列
栈和队列***栈******队列***栈(1)概念:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素 操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底(2)栈中的元素遵循先进后出的原则(3)所以说,只要满足元素遵循先进后出的原则,那么这种数据结构都叫做栈,不管你底层是用数组或者链表实现,他们都叫做栈。(4)压栈和出栈的简单示意图(4)Java中有一个给使用者写好的栈----->Stack类(5)Stack类中的方法模拟实现栈(Stack类)数组版本(6)
2022-05-12 19:11:10
557
7
原创 动态内存管理
动态内存管理为什么存在动态内存分配动态内存函数的介绍动态内存函数总共有4个:malloc,calloc,realloc,free,(1)malloc这个函数向内存申请一块连续可用的空间,并返回指向这块空间的指针。如果开辟成功,则返回一个指向开辟好空间的指针。如果开辟失败,则返回一个NULL指针,因此malloc的返回值一定要做检查。返回值的类型是 void* ,所以malloc函数并不知道开辟空间的类型,具体在使用的时候使用者自己来决定。如果参数 size 为0,malloc的行为是
2022-01-27 09:28:58
146
8
原创 字符函数和字符串函数和内存操作函数
字符函数和字符串函数和内存操作函数字符串函数(1) strlen —— 求字符串长度的库函数(重点理解)字符串已经 ‘\0’ 作为结束标志,strlen函数返回的是在字符串中 ‘\0’ 前面出现的字符个数(不包含 ‘\0’ )。参数指向的字符串必须要以 ‘\0’ 结束。注意函数的返回值为size_t,是无符号的( 易错 )strlen 函数的实现:2)strcpy—字符串拷贝函数(重点理解)源字符串必须以 ‘\0’ 结束。会将源字符串中的 ‘\0’ 拷贝到目标空间目标空间必须足够大
2022-01-23 17:04:20
640
6
原创 c语言指针进阶
c语言指针进阶字符指针(1)字符指针是用来字符变量的地址(2)字符指针的使用:第一种char ch = ‘o’;char* p = &ch;第二种:char* p = “ahsdj”;补充:字符串常量是无数名的字符数组,是一个特殊的字符数组。将一个字符串常量赋个一个字符指针,是将字符串常量的首元素地址赋个字符指针。常量不储存在栈区这里有个面试题:这里str3和str4指向的是一个同一个常量字符串。C/C++会把常量字符串存储到单独的一个内存区域,当几个指针。指向同一
2022-01-19 09:19:18
361
9
原创 取整和取余
取整和取余 在数学的除法运算中,两个数相除是可以算到小数位的。但是,在c语言中两个整数相除其结果是一个整数,只有两数中至少有一个为实数的时候,他们相除的结果才是小数。因此,两个整数相除的结果就会涉及到取整问题。在c语言中,其取整方式为向0取整取整的方法有四种:<1>向0取整:两个整数相除的结果为小数时,其结果是在小数附近并且更靠近0的整数。 例如,5/2=2,10/3=3,c语言有一个向0取整的库函数:trunctr...
2022-01-03 19:37:43
19192
5
原创 深入研究数组
数组数组:数组是一组相同类型元素的集合。一维数组<1>数组的创建方式:数组元素类型 数组名 [数组长度(数组元素个数)]数组的长度一定要是一个常量例如:int arr[10] char b[20]注意:数组创建,在C99标准之前, [] 中要给一个常量才可以,不能使用变量。在C99标准支持了变长数组的概念。<2>数组的初始化数组的初始化是指,在创建数组的同时给数组的内容一些合理初始值(初始化)。数组不初始化数组中元素的值是随机的数组可以部分
2021-12-09 14:30:09
160
11
原创 关键字static和sizeof
关键字static和sizeofstatic用法:补充:sizeofsizeof:用来计算数据类型和变量所占内存大小例子:sizeof(int) sizeof(a) sizeof a 这些写法是对的sizeof int 这种写法是错误的补充:负数的源码 反码 补码 不相等反码:源码符号位不变其他位取反补码:反码加一...
2021-12-08 19:43:00
362
5
原创 c语言关键字:auto和register
c语言关键字:auto和register<1>最宽恒大量的关键字----auto如何使用:一般在代码块定义的变量,即局部变量,默认都是auto修饰的。但是,并不是所有的变量都由auto修饰,一般是局部变量。局部变量、自动变量、临时变量统称为局部变量<2>最快的关键字---- register(寄存器)寄存器离cpu近,速度快寄存器的认识–>cpu内集成的一组存储硬件寄存器的本质:在硬件层面上,提高计算机的运行效率。因为不需要从内存里读取数据。register
2021-12-02 16:55:21
620
3
原创 倒置字符串
倒置字符串思路:先将每一个单词进行逆序,后来再将整个字符串进行逆序将单词进行逆序,我们要用两个指针进行操作我们还要写一个用来逆序的函数总结:这一题运用到了指针与数组的知识点,我们要想到用两个指针来确定一个单词,这一题就很简单了...
2021-11-29 15:26:52
450
4
原创 深度剖析数据在内存中的存储
深度剖析数据在内存中的存储本章重点数据类型详细介绍整形在内存中的存储:原码、反码、补码大小端字节序介绍及判断浮点型在内存中的存储解析数据类型介绍类型的基本归类整形家族:signed------>有符号整型unsigned------->无符号整型signed unsigned只能用在整型类型上signed long---->longsigned int----->intsigned short---->sho
2021-11-28 15:12:25
180
2
原创 const用法和assert的使用
const用法和assert的使用1.const的用法const可以作用于变量和指针<1>const作用于变量例如:const int a = 9; 变量a在const的修饰下变成了常变量顾名思义就是变量a的本质还是变量但是变量a的值不会发生改变虽然,我们不能直接改变变量a的值来改变a的值,但是我们可以通过指针间接来改变a的值<2>const 作用于指针变量const修饰指针变量的时候:1. const如果放在的左边,修饰的是指针指向的内容,保证指针指向的内
2021-11-24 22:47:34
140
5
原创 C语言(函数)
函数是什么函数是一个子程序在计算机科学中,子程序,是一个大型程序中的某部分代码, 由一个或多个语句块组成。它负责完成某项特定任务,而且相较于其他代 码,具备相对的独立性。一般会有输入参数并有返回值,提供对过程的封装和细节的隐藏。这些代码通常被集成为软[]件库。函数分为:. 库函数和自定义函数两种库函数:系统给的,不需要自己定义库函数必须知道的一个秘密就是:使用库函数,必须引用 #include 对应的头文件。库函数有很多,不需要我们一一记下,但是我们要学会通过查找相应的网站学习他们的用法需
2021-11-24 22:39:15
770
8
原创 分支语句无和循环语句
1.什么是语句C语句可分为以下五类:1. 表达式语句2. 函数调用语句3. 控制语句4. 复合语句5. 空语句控制语句用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,C语言有九种控制语句。可分成以下三类:1. 条件判断语句也叫分支语句:if语句、switch语句;2. 循环执行语句:do while语句、while语句、for语句;3. 转向语句:break语句、goto语句、continue语句、return语句。
2021-11-15 14:36:33
167
6
原创 三子棋游戏
三子棋的简单介绍:三子棋是一种民间传统游戏,又叫九宫棋、圈圈叉叉、一条龙等。只要将自己的三个棋子走成一条线,对方就算输了三子棋游戏的代码实现:<1>我将三子棋游戏的代码分为test.c game.c game.h三个部分test.c用来实现代码的测试game.c用来存放test.c中所调用函数的定义game.h用来存放test.c game.c所用到的头文件<2>设计思路首先无论参与者想不想玩都会进入游戏,再通过选择来判断是否进行游戏。所...
2021-11-10 21:26:36
1984
1
原创 c语言出识
目录<1>.关键字typedef<2>.关键字static<3>.#define<4>.指针<5>.结构体1.typedeftypedef 顾名思义是类型定义,这里应该理解为类型重命名简单地说就是将数据类型名称改成自己想用的名字代码:#include<stdio.h>typedef unsigned int u_int; //将unsigned int 重命名为u_int, 所以u_int..
2021-10-25 18:40:02
623
6
原创 2021-10-20
c语言初识<3>选择语句<1>if语句<2>switch case语句例子:#include<stdio.h>int main(){int input=0;printf(“加入比特\n”);printf(“你要好好学习吗?<1/0>:\n”);scanf("%d",&input);if(input==1)printf(“你会拿到好offer\n”);elseprintf(“卖红薯\n”);return 0
2021-10-20 19:54:07
130
1
原创 c语言初识<2>
c语言初识<2>目录:<1>变量的作用域和生命周期.<2>常量的定义<3>字符串<4>strlen函数<5>转义字符内容:1.scanf是C语言提供一个输入函数& – 取地址2.局部变量的作用域:变量所在的局部范围全局变量的作用域:整个工程3.生命周期局部变量:进入局部变量所在的范围,生命周期开始,出局部变量所在的范围的时候,生命周期结束全局变量:就是整个程序的生命周期4.常量字面常量(直接
2021-10-18 14:35:47
246
1
原创 2021-10-17
c语言知识分享1.运行代码:ctrl+F52.写C语言代码的时候首先要知道main函数main函数是程序的入口程序是从main函数的第一行开始执行的按 F10代码从main函数的第一行开始执行main函数 - 主函数 有且仅有一个3. 关键字:sizeof C语言中的sizeof是用来计算变量或者使用类型创建的变量的大小,单位是字节用法例子:#include<stdio.h>int main(){printf("%d\n", sizeof(char));printf(
2021-10-17 19:52:28
75
原创 2021-10-16
我的第一篇博客我的第一个代码:#include<stdio.h>int main(){printf(“my name is κ”);return 0; 大家好,我是来自福建福州的一名在校生,现在由我微大家带来我的第一篇博客。 我以前对编程、计算机了解不是太多。我正真开始接触编程是在高中电脑的时候。从那以后,我便渐渐地从认识编程到一点一点喜欢上编程。以前,我有看一些有关编程的书,但是没经过系统的练习,我的编程能力比较弱,知识点掌握的不扎实。自从了上大学,我选择计算机专.
2021-10-16 07:47:38
210
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人