自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (1)
  • 收藏
  • 关注

原创 建造者模式详解

是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。:建造者模式所创建的产品一般具有较多的共同点,其组成部分相似,如果产品之间的差异性很大,则不适合使用建造者模式,因此其使用范围受到一定的限制。

2023-06-15 12:08:14 882

原创 (并发)锁的分类

静态块,,非静态块。对象锁锁的是,但程序中同一个类可以有多个实例化对象,所以对象锁,在两个或多个实例化对象之间不起作用。类锁锁的是,而在java中我们的类加载是唯一的,即在JVM中类是唯一的,所以加了类锁,。类锁和对象锁不是同一个东西,一个是类的Class对象的锁,一个是类的实例的锁。。反过来也是成立的,因为他们需要的锁是不同的。

2023-03-27 10:54:05 824 1

原创 (了解)操作系统与驱动

驱动是指一种软件程序,它允许操作系统或其他软件程序与硬件设备进行通信和交互。系统或其他软件程序可以通过它们来访问设备功能。CPU(中央处理器)不是驱动程序,它是计算机中的一个重要组件,用于执行指令和计算。

2023-03-24 23:53:15 1582

原创 Docker常用指令

docker run: 运行一个容器。: 停止一个正在运行的容器。: 启动一个已经停止的容器。: 重启一个容器。docker rm: 删除一个容器。docker ps: 列出正在运行的容器。: 列出本地所有镜像。

2023-03-23 22:04:40 711

原创 雪花算法、uuid和自增id的区别

自增id:自增的主键的值是顺序的。

2023-03-09 23:07:51 1962

原创 多版本并发控制MVCC

MVCC是一种并发控制方法,一般在数据库管理系统中,实现数据库的并发访问。可以使用乐观锁和悲观锁来实现。

2023-03-09 20:57:09 470

原创 代码规范简述

只能通过public方法来访问和修改;继承性:继承性是面向对象编程的重要特性,要求子类和父类之间要保持适当的关系,不应该随意修改父类的属性和方法;多态性:多态性是面向对象编程的又一重要特性,要求方法的参数类型和返回值类型要尽量使用父类或接口类型,便于扩展和维护。

2023-03-03 22:02:46 1535

原创 springboot对nacos的使用

一、启动nacos:① 使用docker安装nacos:

2023-02-08 01:01:28 4597

原创 xxl-sso知识点

1、哈希环算法 2、池化思想 3、threadLocal

2023-02-01 20:04:58 862

原创 HashMap相关

HashMap是线程不安全的,存储的值没有顺序,根据key的HashCode值来存储数据,根据key来获取他的value值,具有很快的访问速度。最多,多个时会覆盖,允许多条记录的Value为null。在中,由数组和链表组成,数组是HashMap的主体,链表是为了解决哈希冲突。在中,由数组+链表+红黑树组成,链表过长的时候,影响HashMap性能,JDK8中,链表超过8并且数据总量超过64就会转红黑树,转之前会判断,如果数组长度小于64就会选择先进行数组扩容。

2023-01-12 12:56:07 251

原创 springboot多项目结构

当我们做的项目稍微大一点之后,就会经常遇到需要把不同的模块分离出来的时候,比如微信的朋友圈、微信支付、聊天服务等模块,像这种微服务项目一般都会把base、common、前端抽离出来。

2023-01-09 18:16:32 963

原创 异常拦截=

异常拦截的目的:规范化异常的处理过程,避免异常被吞和到处都在捕获异常的情况;对异常情况进行预警,以便能够及时响应

2023-01-09 11:18:38 138

原创 事务四大特性

①原子性undolog 来实现一旦失败就马上触发回滚当前事务是不可再分的,要么一起执行,要么都不执行。 start transaction

2023-01-02 22:54:20 334

原创 静态代理与动态代理

代理是一种设计模式,提供了对目标对象另外的访问方式。意义:可以在目标对象代码实现的基础上,增强额外的功能代码。

2022-12-21 23:52:48 67

原创 java中的垃圾回收算法

java中有四种垃圾回收算法,分别是:标记清除法、标记整理法、复制算法、分代收集算法

2022-12-21 23:24:22 3773

原创 Spring循环依赖

发生循环依赖的原因:在代码中,将两个或多个 Bean 互相之间持有对方的引用就会发生循环依赖。循环的依赖将会导致注入死循环

2022-12-17 22:37:32 327

原创 八大排序--思路与代码

各项对比:

2022-12-16 22:31:48 155

原创 iptables的安装和使用

iptables -A INPUT -p tcp --dport 8080 -j ACCEPTiptables -A OUTPUT -p tcp --sport 8080 -j ACCEPT

2022-12-15 23:09:29 4137

原创 面向过程和面向对象的区别

面向对象让程序维护起来简单;由于继承、封装、多态的特性,以及高内聚、低耦合的系统结构,使得系统更加灵活、更容易扩展;

2022-12-15 11:49:51 143

原创 idea代码检测工具sonar和alibaba插件

下面介绍两种代码检测插件的安装和使用,SonarLint和aibaba,使用起来主要有以下区别:

2022-12-14 22:31:41 1427

原创 背包问题dp

解题思路:把amount看成是一个数组集合,里面包含了所有比它小的数字(1-11),一共是12个数字,然后再去coins集合里找匹配的数,最优的情况是coins集合里有11,如果没有就找到其中一个,例如5,然后再去找11-5=6的coin,再去找6-5=1 / 6-2=4的coin,很明显6-5=1的coin需要的硬币个数最少,所以需要3个

2022-11-16 10:48:04 94

原创 mysql数据库的运行原理

mysql数据库会通过监听socket端口,java通过TCP/IP协议[传输层]给3306默认端口发送sql语句

2022-10-12 23:06:16 343

原创 对象在堆内存中的布局

对象在堆内存中的存储布局可以划分为三个部分:对象头、实例数据和对齐填充。

2022-10-08 22:43:30 309

原创 jvm是怎么分配空间的

jvm分配空间有两种方式,以下采用通俗的方式来阐述:

2022-10-08 22:36:45 196

原创 java虚拟机底层内存所划分的几个区域

栈 堆 方法区 计数器

2022-10-08 22:06:56 570

原创 ssm实现登录、注册、邮箱验证、列出所有用户

ssm实现登录、注册、邮箱验证、列出所有用户

2022-09-21 11:02:47 2447 1

原创 网络攻击的一般步骤

第一步:隐藏攻击源利用别人的计算机 (肉机) 隐藏他们真实的 IP 地址,伪造 IP 地址,假冒用户账号等。第二步:信息搜集攻击者通过各种途径搜索目标信息,进行综合整理分析后,拟定攻击方案,为入侵作好充分的准备。踩点、扫描、嗅探等手段。第三步:掌握系统控制权攻击者们利用系统漏洞进入进入目标主机系统获得控制权。通常是系统口令猜测、种植木马、会话劫持等。第四步:实施攻击不同攻击者目的不同,主要是破坏机密性、完整性和可用性等。通常是下载、修改或删除敏感信息、瘫痪服务、攻击其他被信任的主机

2022-05-12 22:16:02 16322

原创 防火墙与计算机病毒

防火墙:防火墙提供的基本服务:有选择地限制外网用户对内网的访问,保护内网的特定资源;有选择地限制内部网用户对外网的访问。防火墙三大要素:安全、配置、速度分类:按软硬件形式分为硬件防火墙和软件防火墙;按防火墙部署位置分为边界防火墙、个人防火墙、分布式防火墙。防火墙的主要功能:①阻止易受攻击的服务②控制访问网点③集中安全性管理④对网络存取和访问⑤进行监控审计⑥检测扫描计算机的企图⑦防范特洛伊木马⑧防病毒功能⑨支持VPN技术⑩提供网络地址翻译功能防火墙的缺陷:不能防范内部攻击;不能防范不通过防火墙的连

2022-05-12 22:14:21 1388

原创 信息安全案例

随着信息技术的广发应用及迅猛发展,人们的各种信息活动更多地通过以计算机及网络为主体的信息系统进行,信息安全越来越依赖于信息机通的安全。然而以计算机及网络为主体的信息系统有其本身的脆弱性,存在来自各方面的安全威胁信息安全问题日益突出。案例1:美国NASDAQ事故 1994年8月1日,由于一只松鼠通过位于康涅狄格网络主计算机附近一条电话线挖洞,造成电源紧急控制系统损坏,NASDAQ电子交易系统日均过超过3亿股的股票市场暂停营业近34分钟。案例2:美国纽约银行EFT损失 ...

2022-05-12 21:19:05 6576

原创 尝试在目标目录创建文件时发生一个错误:安装程序不能创建目录”D:\360DownloadsLenovoQMDownload\Microsoft VSCodel_“..错误5:拒绝访问。.

vscode中报错:尝试在目标目录创建文件时发生一个错误:安装程序不能创建目录”D:\360DownloadsLenovoQMDownload\Microsoft VSCodel_"..错误5:拒绝访问。.试试用管理员身份运行,就不会报错了。

2022-04-24 19:04:29 759

原创 Spring启动Tomcat失败的解决办法

首先运行一下ApplicationTests,看一下能否这样的运行结果:如果不能,就表示tomcat没有启动成功。第一步,保证tomcat运行成功,如下界面表示tomcat是正常运行的:如果不是,那么就需要配置tomcat:首先,打开File->Project Structure,点击Artifacts,再点+,Web Application:Exploded-->form Modules...-->OK-->war exploded,然后继续+,Web Ap

2022-04-15 20:39:28 3133

原创 java -version出现Error: could not open `C:\Program Files\Java\jre1.8.0_261\lib\amd64\jvm.cfg‘

在配置maven的时候发现javahome出错了,原因是配置前为了把所有的配置文件放在一起所以移动了文件夹的位置如果你有移动文件夹位置的情况的话,方法其实很简单,不要去删掉任何文件,直接在环境变量里把%JAVA_HOME%\jre\bin移到最上面就行了:点击确定后成功。...

2022-04-13 19:17:24 2235

原创 Java基础4(类与对象)

属性(字段)+ 方法 = 类(class)静态的属性 动态的行为面向对象(oop):分类的思维模式,而面向过程是线性思维模式,面向对象是适合多人协作的复杂问题。oop的本质:以类的方式组织代码,以对象的形式封装数据。抽象:把多个共同点抽取出来形成一个类。(抽 像)从认识论分析:是具体对象抽象成类;但从代码运行角度分析:是由类这样一个模板新建了一个对象。方法: 修饰符 返回值类型 方法名(……){方法体return 返回值;}public String Hello{

2022-04-03 22:37:00 375

原创 冒泡排序所遇到的几个问题

冒泡排序:从前往后两两进行比较,交换位置让最大/最小在后面,直至产生出最大/最小数,下一轮会少一次比较……代码:package com.xiong.dan;import java.util.Arrays;//toString会用到public class maoPao { public static void main(String[] args) { int [] a={3,5,2,8,4,1,9}; int[] sort =sort(a);//数组作

2022-03-31 20:19:46 2187

原创 用while或for循环输出1~1000之间能被5整除的数,并且每行输出三个

package com.xiong.circle;public class forDemo2 { public static void main(String[] args) { int count=0;//注意一定不能将定义count放到循环里,否则每次循环count都会变成0 for(int i=1;i<=1000;i++){ if(i%5==0){ System.out.print(i+"\t.

2022-03-28 18:58:18 884

原创 做一个简易计算器,用户输入两个数,实现加减乘除

package com.xiong.dan;import java.util.Scanner;public class calculator2 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); double a=0,b=0; System.out.println("请输入第一个数:"); if(scanner.h.

2022-03-28 18:55:03 4927

原创 Java基础3(数组)

数组的声明:int [ ] nums; //int nums [ ] 也可以,但不建议使用。使用new来创建数组(分配空间):int [ ] mums = new int [10] (这是声明+创建,里面可以存放10个int数字)获取数组的长度:nums.length静态初始化:int [ ] a = {1,2,3,4,5}; //创建+赋值,空间为5创建后不可改变。动态初始化:int [ ] b = new int [5];b[0] = 1; b[1] = 2; ……*数组是引用.

2022-03-28 10:50:33 359

原创 JAVA基础2

运算符: 整除:/ 取余:% 不等于:!= instanceof与:&& 或:|| 非:!包:(Package)相当于文件夹idea中Ctrl+D:复制当前行到下一行a=10,b=20,则a/b=0,而a/(double)b=0.5几个数相加,若某一个数为long/double,则结果为long/double;如果没有long,(整数)计算结果都为int。幂运算:double pow = Math.pow(2,3);System.out.println(pow

2022-03-21 20:29:30 565

原创 JAVA基础1

jdk环境配置:卸载需要删除安装目录,删除JAVA_HOME 和 Pathcmd输入java -version可以看是否还有jdk添加jdk环境变量:1.JAVA_HOME添加文件路径2.在Path里加%JAVA_HOME%\bin(引用JAVA_HOME的路径)和%JAVA_HOME%\jre\binJava是区分大小写的hello world:public class Hello{public static void main(String[] args){ /..

2022-03-20 11:01:21 324

原创 安装mysql时运行net start mysql命令提示服务无法启动,发生系统错误1067&&navicat数据库报1023错误,没办法打开

net start mysql试试,如果还是不行的话,在你的电脑上搜索一下my-default.ini,等它加载完,看看电脑里面的这个文件放在哪里,进入该文件夹,一般是MySQL,直接把MySQL永久删除就好啦

2022-03-19 17:56:21 2108

用动态规划实现最短编辑距离的求解.cpp

用动态规划实现最短编辑距离的求解.cpp

2021-07-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除