- 博客(42)
- 收藏
- 关注
原创 SpringBoot项目的项目部署全过程
cd /opt/nginx/sbin 此时进入nginx的sbin (里面是nginx的启动命令)./configure--prefix=/opt/nginx (尽量安装到/opt/nginx目录下)(部署之前记得将全部ip(localhost/127.0.0.1)改为你的云服务器ip)(ps -ef |grep nginx 如果有端口即为启动成功)1.将提前准备好的nginx的安装包上传到Linux中(我用的是Xftp)将dist目录下的所有文件都上传到 /opt/nginx/html 中。
2024-05-14 22:14:50
2198
原创 LeetCode练习题--567.字符串的排列
给你两个字符串s1与s2,判断s2中是否存在一个子串:它包含s1中所有字符且不包含其他字符。其中需要注意的点我都已经做了注解,如果还有什么地方不明白,可以私信我。今天讲一个非常经典的滑动窗口的问题。接下来让我们一起做一下这道题。
2024-04-05 17:09:16
317
1
原创 Integer的缓存机制
在我们定义一个Integer的时候,系统会自动调用Integer.valueOf(),进行一个自动装箱,在创建时Integer类会先进行一个判断:看你传入的这个参数是否在-128~127之间,如果在其中的话,会调用IntegerCache中定义的方法。为什么明明是相同的Integer值,有的时候使用"=="就可以,有的时候则必须使用equals方法来进行判断?几经无果,我开始阅读源码,一段时间后我才知道:原来Integer还有这样一种说法-----问过好几个AI之后,我惊讶的发现----一无所获。
2024-04-05 16:36:50
512
原创 String、StringBuilder、StringBuffer
String适用于少量拼接的StringBuffer与StringBuilder是可大量拼接的String对象的值是不可改变的,会产生问题,经常拼接字符串时,会创建多个字符转对象,造成浪费如果某一些场景下,需要大量的拼接字符串就可以使用StringBuffer或StringBuilder。
2024-03-23 15:51:33
483
原创 Lombok插件的安装和使用说明
Lombok是一个通过注解以达到减少代码的Java库,如通过注解的方式减少get,set方法,构造方法等。从上面的代码中我们可以看出,使用了Lombok后Java实体类的源码会变得非常,且。
2024-03-21 23:41:49
423
原创 LeetCode困难题----84.柱状图中的最大矩形
其中有难度的点我已经写在注释里了,如果还有什么不会的地方,可以评论或者私信问我,我看到之后会第一时间回复的!看了半天题解还是没理解他的代码想要表达的是什么意思,在思考了很久之后,终于,我理解了这道题,接下来让我带你们走进这道题。问题来了,我们如何方便,快捷的拿到左边比当前小的元素呢?首先我们先来分析一下这个问题,我们需要。but,很遗憾:这样会。这道题的大概意思是,那我们应该怎么做呢?
2024-03-21 21:24:37
491
原创 Java异常处理
指的是程序运行中一切不正常的情况.Java中将这些不正常分为两种:1.Error: 错误,指的是,程序运行过程中出现了问题,但是程序自身无法解决jvm自己出错了,内存不够用了.Exception in thread "main" java.lang.StackOverflowError 栈溢出错误2.狭义上的异常(Exception): 也是程序运行中出现了问题,但是可以通过异常处理机制代码进行解决.解决后程序可以继续向后运行.例如数组越界......
2024-03-13 15:04:19
992
原创 Arrays类常用方法详解(源码分析)
众所周知,equals方法是比较里面的内容是否相等的方法,那Arrays中的equals()方法,就是重写了Object中equals(),
2024-03-09 00:31:30
951
原创 GC--垃圾回收
垃圾是指在运行程序中没有任何引用指向的对象,这个对象就是垃圾,垃圾对象需要被清理回收,否则会一直被占用,浪费空间,其他新对象无法使用该控件,严重的话会造成内存溢出当外界有引用指向这个系统时,A的引用会指向B,B的引用指向C,C引用又指向A,这样如果外部请求引用切断时,该系统与外界就失去了联系,但是他们的程序计数器属性不为0,这样会导致循环引用问题,从而导致内存泄漏虚拟机栈中引用的对象(正在运行的方法中的对象)静态属性(static)被用来当做同步锁的Java系统中的类。
2024-03-08 22:41:31
2000
原创 JVM进阶--一篇文章搞定Java虚拟机
类加载子系统负责从文件系统(硬盘)或者网络中加载.class文件。classLoader只负责.class文件的加载,至于他是否可以运行,则由Execution Engine决定。人话:类加载子系统就是负责将.class文件从本地加载到JVM中的。被native关键字修饰的方法,本地方法不是java语言实现的,是由操作系统实现的一个本地方法是一个java调用非java代码的接口本地方法 接口关键字native可以与其他所有的java标识符连用,but关键字abstract 除外。
2024-03-08 16:41:53
1011
原创 Redis进阶--一篇文章带你走出Redis
Redis是一款非关系型数据库,以键值对的形式存储在内存中,储存在内存中,读写的速度非常快,还支持多种数据类型,支持数据持久化。
2024-03-06 19:09:10
2039
原创 基本类型包装类
基本类型 ----> 8种基本数据类型 包装类:虽然这8种基本类型使用起来很简单,但是具体在面向对象语言中使用还是有很多弊端的基本类型使用关键字定义,不是面向对象的语言(Java为了简单省事,直接抄隔壁C语言的)在Java语言中,为每种基本类型都提供了一个类进行包装(后来Java发现直接抄过来的不好用,所以给每一种基本类型又加上了"包装类"),这样就是以面向对象的方式进行操作简单的例子:有8种基本数据类型,Java为我们提供了8个包装类float拿int与integer举例
2024-03-06 15:05:44
384
原创 equals()与==的区别
也可以对引用类型(对象)进行比较,比较的是引用变量所指向的空间地址。在Java中 ' == ' 可以对基本类型进行比较,比较的是值是否相等。可是这个也不是对象的内容是否相等啊,你这比较的是String类型啊。那我们想要比较对象中所包含的内容是否相等,我们应该怎么做呢?这个方法一般用于比较两个字符串的内容是否相等。
2024-03-06 14:27:48
515
原创 面向对象语言三大特征
同生活中一样,Java中的继承也是子继承父,这里的继承即指子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
2024-03-05 22:06:36
818
原创 Java中的正则表达式
正则表达式的基本认识认识. + * ?认识\s \d \w匹配email地址Matcher类与Pattern类正则表达式的底层逻辑贪婪模式,非贪婪模式和独占模式
2024-01-14 16:44:26
942
原创 SpringBoot的集成
开始SpringBoot之前,让我们先回顾一下Spring的优缺点优点: 轻量级,非侵入式,具有IOC和AOP功能的一站式框架简化企业级的开发将对象统一进行管理,为类提供额外的管理(IOC)可以将非业务代码进行提取(AOP)动态调用减低各层之间的耦合度,很好的兼容集成其他框架提高了开发效率缺点: 配置繁琐,很多都是模板化配置(废话)需要我们自己提供一些组件的依赖(jar包)这样,我们的SpringBoot就配置完成啦。
2023-08-29 23:31:59
306
原创 MySQL数据库缓冲池
一般程序,每次与数据库交互一次,创建一个数据库连接对象(Connection,SqlSession)用完就销毁,下次需要的时候重复这个过程,这样会有一个问题:频繁的创建和销毁对象需要很大的开销,于是数据库缓冲池诞生了。在启动时,设置一个容器,在里面初始化一些对象,有请求到来时,可以不用每次都创建销毁,这些对象可以重复使用。也叫数据库连接池,主要用于缓存数据库中常用的数据和索引信息,以提高数据库查询和操作的效率.
2023-08-22 19:57:11
118
原创 mybatis的环境搭建
/ 读取mybatis核心配置文件// 创建SqlSessionFactory// 创建SqlSession session会话,一次与数据库交互,类似于之前使用的Connection// 创建访问接口代理对象// 使用代理对象访问接口中对应的方法,本质是调用接口对应的sql映射文件中的sqltry{}finally {// 关闭与数据库连接。
2023-08-22 19:13:08
84
原创 版本控制工具--git
工作区:就是你在电脑上创建的文件,可以看见的暂存区:英文名叫stage或者index,可以暂时存储临时代码,可以撤销本地库:把暂存区代码提交到本地库,生成历史版本,历史记录不可删除。
2023-08-21 21:46:18
780
1
原创 项目构建管理工具--Maven
Maven 是 Apache 的一个开源项目,是用来进行项目的构建(创建管理项目),它用来帮助开发者管理项目中的 jar,以及 jar之间的依赖关系、完成项目的编译、 测试、打包和发布等工作。
2023-08-20 20:31:25
131
2
原创 LeetCode练习题--026
LeetCode--026 删除有序数组中的重复项由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分。更规范地说,如果在删除重复项之后有 k 个元素,那么 nums 的前 k 个元素应该保存最终结果。给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致。将最终结果插入 nums 的前 k 个位置后返回 k。修改输入数组 并在使用。额外空间的条件下完成。
2023-04-04 14:52:56
69
原创 LeetCode练习题--020
LeetCode 020_有效的括号给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。每个右括号都有一个对应的相同类型的左括号。左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。输入:s = "()[]{}"输入: s="{[(])}"输入:s = "()"
2023-04-04 14:36:51
90
原创 LeetCode练习题--001
LeetCode 001_两数之和数组中同一个元素在答案里不能重复出现。你可以假设每种输入只会对应一个答案。的那 两个 整数,并返回它们的数组下标。可以按任意顺序返回答案。,请你在该数组中找出 和为目标值。
2023-04-02 20:05:49
75
原创 面向对象(1)
面向对象与面向过程是相辅相成的。面向对象关注于从宏观上把握事物之间的关系,在具体到如何实现某个细节时,仍然采用面向过程的思维方式。面向对象如果离开了面向过程,就无法实现真正的落地,成为无源之水。
2023-03-26 20:43:04
57
原创 Java实现角度转换器
角度转换器,度分换算的公式如下:度=度+-分/60,如果超过60分换算成1度。角度转换规则是:1度=60分。角度单位转换采用的是60进制,进率为60。度是大单位,分是小单位,从大化小就乘以进率,从小到大就除以进率。
2022-12-09 19:10:24
732
原创 JavaSE基础语法--控制语句
条件语句1.if条件语句2.Switch语句循环语句1.for循环2.while循环3.do...while循环4.嵌套循环
2022-11-11 20:50:46
245
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人