- 博客(432)
- 资源 (20)
- 收藏
- 关注

原创 我是谁?
我是谁?一个菜鸟程序员,一个弱鸡研究生。一个在计算机专业的苟延馋喘的弱鸡研究生,一个在计算机方向苟且偷生的的菜鸟程序员。刘老shi,是大学同学起的,可能是我经常给他们讲代码,也可能是我经常开车?年少时,农村留守儿童,跟着祖父母生活在农村。在河南,也再常见不过的。老辈人眼中的网吧,就是不听话的孩子去的地方。家教严格,也算是规矩,初中不敢去。高中在县城上学,学会了上网,去个网吧心惊胆战。没有QQ,流星蝴蝶剑,血战上海滩,跑跑卡丁车,CS…有了QQ,QQ炫舞,QQ飞车,穿越火线…每个都尝试
2020-05-10 15:54:26
1660
6
原创 2023年总结
老爷子可以说是这个世界上我最亲近的人了,到今天,虽然已经一个多月,可我到现在也没法接受。还是像往年一样,今年的总结 来的太迟,这段时间,可能始终没有缓过来。23年开始 升哥毅然离开了,选择去干Java,而我却依旧随遇而安。短短一年 经历了部门的大调整,领导,老同事的离开,晋升、裁员。不知不觉上班都已经一年多了,可惜,还是感觉自己什么也不会。树欲静而风不止,遗憾和后悔,真的是身临其境,才能感同身受。这人啊 , 一旦躺平了,真的很难再有什么动力了。是的,将近十年的长跑,终于修成了正果。时间总是在催着你成长啊。
2024-01-09 23:19:24
451
1
原创 Java面试必背八股文[12]:计算机操作系统
进程和线程有什么区别?进程(Process)是系统进行资源分配和调度的基本单位,线程(Thread)是CPU调度和分派的基本单位;线程依赖于进程而存在,一个进程至少有一个线程;进程有自己的独立地址空间,线程共享所属进程的地址空间;进程是拥有系统资源的一个独立单位,而线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),和其他线程共享本进程的相关资源如内存、I/O、cpu等;在进程切换时,涉及到整个当前进程CPU环境的保存环境的设置以及新被调度运行的CPU
2022-04-30 16:03:13
1301
原创 Java面试必背八股文[11]:计算机网络
OSI与TCP/IP各层的结构?答:OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。TCP/IP分层(4层):网络接口层、 网际层、运输层、 应用层。五层协议 (5层):物理层、数据链路层、网络层、运输层、 应用层。每一层的作用如下:物理层:通过媒介传输比特,确定机械及电气规范(比特Bit)数据链路层:将比特组装成帧和点到点的传递(帧Frame)网络层:负责数据包从源到宿的传递和网际互连(包PackeT)传输层:提供端到端的可靠报文传递和错误恢复(段Seg
2022-04-30 15:59:27
3754
原创 Java面试必背八股文[10]:RabbitMQ
什么是 rabbitmq?采用 AMQP (Advanced Message Queuing Protocol,高级消息队列协议)的一种消息队列技术,最大的特点就是消费并不需要确保提供方存在,实现了服务之间的高度解耦。RabbitMQ的基础架构如下:为什么要使用 rabbitmq?在分布式系统下具备异步、削峰、负载均衡等一系列高级功能;拥有持久化的机制,进程消息,队列中的信息也可以保存下来。实现消费者和生产者之间的解耦。对于高并发场景下,利用消息队列可以使得同步访问变为串行访
2022-04-30 15:51:19
2391
原创 Java面试必背八股文[9]:SpringBoot
什么是 Spring Boot?Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot 致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者Spring Boot 特点 ?一、独立运行Spring Boot而且内嵌了各种servlet容器,Tomcat、Jetty
2022-04-30 15:47:28
1115
原创 Java面试必背八股文[8]:MyBatis
MyBatisMybatis是一个优秀的持久层ORM框架,它对jdbc的操作数据库的过程进行封装,使得开发者只需要关注SQL本身。不需要花费精力去处理一些重复和繁琐的步骤。通过java对象和statement中的sql进行映射生成最终执行的sql语句。最后由mysql框架执行sql并将结果映射成java对象并返回。MyBatis的优点基于SQL语句编程,相当灵活。SQL写在XML中,解除sql与程序代码的耦合,便于统一管理。提供XML标签,支持编写动态SQL语句,并可重用消除了 JDBC 大量冗余
2022-04-30 15:45:29
2491
原创 Java面试必背八股文[7]:Spring
什么是 Spring Framework?Spring 是一个开源应用框架,旨在降低应用程序开发的复杂度。它是轻量级、松散耦合的。它具有分层体系结构,允许用户选择组件,同时还为 J2EE 应用程序开发提供了一个有凝聚力的框架。它可以集成其他框架,如 Structs、Hibernate、EJB 等,所以又称为框架的框架。Spring Framework 中有多少个模块,它们分别是什么?spring core:提供了框架的基本组成部分,包括控制反转(Inversion of Control,IOC)和
2022-04-30 15:41:05
1204
原创 Java面试必背八股文[6]:Redis
使用 Redis 有哪些好处?1、速度快,因为数据存在内存中,类似于 HashMap,HashMap 的优势就是查找和操作的时间复杂度都是 O(1)2、支持丰富数据类型,支持 string,list,set,Zset,hash 等3、支持事务,操作都是原子性,所谓的原子性就是对数据的更改要么全部执行,要么全部不执行4、丰富的特性:可用于缓存,发布订阅、消息,按 key 设置过期时间,过期后将会自动删除Redis的五种数据类型何应用场景Redis的数据结构有:字符串(String):可以用来做
2022-04-30 15:37:41
1916
原创 Java面试必背八股文[5]:MySQL
Drop、Delete、TRUNCATE的区别dropdrop直接删掉表;drop语句将表所占用的空间全释放掉。drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger)索引(index);依赖于该表的存储过程/函数将被保留,但其状态会变为:invalid。deletedelete删除表中数据,可以加where字句delete操作不会减少表或索引所占用的空间。范围:可以是table和view。只删除数据,而不删除表的结构(定义)delete语句为DML(
2022-04-30 15:27:53
1754
原创 Java面试必背八股文[4]:JVM相关
什么是JMM模型?JMM并不真实存在,只是一种规范,通过这种规范来让定义程序中各个变量的访问方式。JVM运行程序的实体是线程,而每个线程创建时JVM都会为其创建一个工作内存(有些地方称为栈空间),用于存储线程私有的数据,而Java内存模型中规定所有变量都存储在主内存,主内存是共享内存区域,所有线程都可以访问,但线程对变量的操作(读取赋值等)必须在工作内存中进行,首先要将变量从主内存拷贝的自己的工作内存空间,然后对变量进行操作,操作完成后再将变量写回主内存,不能直接操作主内存中的变量,工作内存中存储着主内存
2022-04-29 13:46:49
1609
原创 Java面试必背八股文[2]:Java 多线程
简述线程、程序、进程的基本概念?程序是含有指令和数据的文件,被存储在磁盘或其他的数据存储设备中,也就是说程序是静态的代码。进程是程序的一次执行过程,是系统运行程序(资源分配)的基本单位,因此进程是动态的。系统运行一个程序即是一个进程从创建,运行到消亡的过程。简单来说,一个进程就是一个执行中的程序,同时,每个进程还占有某些系统资源如 CPU 时间,内存空间,文件,输入输出设备的使用权等等。线程与进程相似,但线程是一个比进程更小的调度和执行单位。一个进程在其执行的过程中可以产生多个线程。与进程不同的是同类
2022-04-29 13:37:51
850
原创 Java面试必背八股文[3]:Java 集合
Java 集合框架图 String 为什么是不可变的?简单的来说:String 类中使用 final 关键字修饰字符数组来保存字符串, private final char value[] ,所以 String 对象是不可变的。String、StringBuffer 和 StringBuilder 的区别?而 StringBuilder 与 StringBuffer 都继承自 AbstractStringBuilder 类,在 AbstractStringBuilder 中也是使用字符数组保存字符
2022-04-29 13:22:48
438
原创 Java面试必背八股文[1]:Java 基础
面向对象和面向过程的区别?**面向过程 :**面向过程是一种以事件为中心的编程思想,编程的时候把解决问题的步骤分析出来,然后用函数把这些步骤实现,在一步一步的具体步骤中再按顺序调用函数。**面向对象 :**面向对象是按人们认识客观世界的系统思维方式,采用基于对象(实体)的概念建立模型,模拟客观世界分析、设计、实现软件的编程思想,通过面向对象的理念使计算机软件系统能与现实世界中的系统一一对应。面向对象易维护、易复用、易扩展。 因为面向对象有封装、继承、多态性的特性,所以可以设计出低耦合的系统,使系统更加
2022-04-26 19:16:09
1390
原创 2021年 秋招面试记录
2021年 春招面试记录提前批:招银网络:笔试凉vivo: 简历凉Tplink: 简历凉同花顺:笔试凉字节跳动:一面凉 投错了大华 HR 面京东 简历没过蔚来 8.23 收到 意向书拼多多 简历 中止商汤科技 简历凉滴滴(???)端点 面完7.26shoppe: 简历凉虎牙直播https://app.mokahr.com/m/candidate/applications/deliver-query/huya希音SHEINZoo
2022-01-08 22:55:49
602
原创 idea中module项目没有蓝色小方块问题
问题描述:idea项目没有蓝色小方块问题:把项目中module删除之后重新添加,发现项目右下角没有"蓝色小方块",maven也不能识别,如下图:解决方案:打开"maven" – 选择"+"-- 选择module的"pox.xml文件"–点击"OK"...
2021-09-10 02:50:49
3154
原创 Error:(3, 39) java: 程序包com.alibaba.fastjson.annotation不存在
问题描述:IDEA依赖包下载不全,报错:Error:(3, 39) java: 程序包com.alibaba.fastjson.annotation不存在解决方案:#使用cmd,到项目根目录下,运行命令:mvn clean install -Dmaven.test.skip=true#再运行命令(idea中更新不完整依赖命令):mvn -U idea:idea...
2021-09-10 02:13:46
5258
6
原创 IDEA System.out.println(“中文“);输出中文乱码问题
问题描述: System.out.println("任务已启动。如有需要,请关闭后重启!"); System.out.println("测试");输出结果:解决方案:第一步: 检查文件编码格式是否有问题界面右下角显示为utf-8**第二步:检查file encoding **setting->editor->file encoding发现project Encoding 为系统默认GBK,修改为UTF-8,点击应用。重新执行发现依旧乱码。第三步:点击编辑配置,
2021-08-02 14:47:20
15999
3
原创 基本类型和包装类型的区别
简介Java 的每个基本类型都对应了一个包装类型,比如说 int 的包装类型为 Integer,double 的包装类型为 Double。基本类型和包装类型的区别主要有以下 4 点区别1.包装类型可以为 null,而基本类型不可以它使得包装类型可以应用于 POJO 中,而基本类型则不行 POJO:简单无规则的 Java 对象,只有属性字段以及 setter 和 getter 方法,示例如下。class Writer { private Integer age; priv...
2021-07-19 16:15:52
330
原创 centos安装jdk1.8
Linux平台安装JDK的方式大致有三种(rpm,yum,手动安装),这里简单介绍手动安装JDK的方式。一.去Oracle官网下载所需JDK包这里跟windows平台差不多,去官网查找链接下载对应JDK安装包,这里附上JDK1.8下载地址,下载对应linux版本。现在Oracle下载JDK需要注册登录,嫌麻烦的可以在下面链接下载:链接:https://pan.baidu.com/s/1-L091q8Jq1oeL1coGzniOQ提取码:ls9u二. 解压安装1.创建java文件夹.
2021-07-15 18:23:54
456
原创 centos7无法上网问题
项目场景:在虚拟机VM中安装了centos7,突然无法上网,不知道咋回事,所以上网查了资料博客,现总结如下。一.首先打开虚拟的设置,可以看到虚拟机网络的设置默认为NAT模式:二.按照网上的操作,登录到centos7操作系统,查看系统的网络配置文件ls /etc/sysconfig/network-scripts我们可以看到一堆文件,找到类似ifcfg-ensXXX的文件,我的是ifcfg-ens33,根据每个人的机器不同,会有所不同。vim /etc/sysconfig/
2021-07-10 16:48:19
4186
6
原创 secureCRT出现“数据库里没有找到防火墙 ‘无‘”解决方法
问题描述:secureCRT出现“数据库里没有找到防火墙 '无'”解决方法旧版本中文secureCRT创建的session会出现该问题,我现在使用的secureCRT6.5中该问题已不存在。该问题是由于旧版本中文secureCRT创建的session配置文件中S:"Firewall Name"一项被设为“无”。解决方案:该配置文件在secureCRT配置文件夹【选项-全局选项-常规-配置文件夹】下Sessions文件夹内,名称为session名称对应的ini文件。如下:S:"Fire
2021-06-22 20:17:16
3312
1
原创 IDEA连接MySQL 8.0.*时出现区未配置出现的问题
项目场景:IDEA 2020版本MySQL 8.0.21问题描述:IDEA连接MySQL 8.0.*时出现区未配置出现的问题:原因分析:查阅翻译为:服务器返回无效时区。进入“高级”选项卡,手动设置“serverTimezone”属性。解决方案:检查环境变量是否配置:连接数据库配置时区输入mysql -hlocalhost -uroot -p输入show variables like’%time_zone’; (必须加分号)查看时区的配置状态SYSTEM说明未配置,输入set
2021-05-22 21:56:05
295
原创 12-Java网络编程
Java网络编程1. 概述1.1 计算机网络简介计算机网络是通过传输介质、通信设施和网络通信协议,把分散在不同地点的计算机设备互连起来的,实现资源共享和数据传输的系统。网络编程就是编写程序使互联网的两个(或多个)设备(如计算机)之间进行数据传输。Java语言对网络编程提供了良好的支持。通过其提供的接口我们可以很方便地进行网络编程。1.2 网络分层 通过网络发送数据是一项复杂的操作,必须仔细地协调网络的物理特性以及所发送数据的逻辑特征。通过网络将数据从一台主机发送到另外的主机,这个过程是通
2021-05-22 01:40:39
211
1
原创 11-Java多线程基础
Java 多线程基础1. 相关概念程序、进程、线程程序:为了让计算机完成特定功能的一系列有序指令的集合。进程:是系统进行资源分配和调度的基本单位,简单理解为,正在运行的程序。有自己的生命周期,如:正在运行的QQ,微信,word等。线程:CPU的调度单位,进程中的一个实体,资源的拥有者还是进程。一个进程包含1—n个线程。为什么要引进进程?进程的引入是为了使多个程序并发执行以改善系统资源的利用率和系统的吞吐量。有了进程为什么还要引入线程呢?虽然进程能够改善系统资源的利用率和系统的吞吐量。
2021-05-22 01:36:58
998
原创 10-JDBC相关
JDBC1. JDBC 概述什么是 JDBC ?JDBC: Java DataBase Connectivity(java数据库连接)它是sun公司提供的一套java应用程序访问数据库的技术或规范。是一种用于执行SQL语句的Java API,它统一和规范了应用程序与数据库的连接、执行SQL语句,并到得到返回结果等各类操作,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC定义了一些接口驱动管理 DriverManager连接接口 Connection Dat
2021-05-21 17:37:50
179
1
原创 9-Java反射机制
Java 反射机制1. 概述什么是反射?反射 (Reflection) 是 Java 的特征之一,它允许运行中的 Java 程序获取自身的信息,并且可以操作类或对象的内部属性。Oracle 官方对反射的解释是:Reflection enables Java code to discover information about the fields, methods and constructors of loaded classes, and to use reflected fields,
2021-05-21 17:37:10
191
原创 8-IO流
Java IO流1. IO 流简介1.1 流的概念流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。1.2 IO流的分类根据处理数据类型的不同分为:字符流和字节流根据数据流向不同分为:输入流和输出流字符流和字节流字符流的由来: 因为数据编码的不同,而有了对字符进行高效操作的流对象。本质其实就是基于字节流读取时,去查了指定的码表。 字节流和字符流的区别:读
2021-05-21 17:36:25
214
原创 7-Java泛型
Java 泛型1. Java 泛型概述1.1 什么是泛型?泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。泛型的本质是为了参数化类型(在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型)。也就是说在泛型使用过程中,操作的数据类型被指定为一个参数,
2021-05-21 17:35:48
129
原创 6-Java异常处理
Java 异常处理1. Java 异常的概念异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error;如果你用System.out.println(11/0),那么你是因为你用0做了除数,会抛出 java.lang.ArithmeticException 的异常。异常发生的原因有很多,通常包含以下几大类:用户输入了非法数据。要打开的文件不存在。网络通信时连接中断,或者JVM内存
2021-05-21 17:35:18
199
原创 5-Java集合
JAVA集合1. JAVA集合框架Java 集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射。Collection 接口又有 3 种子类型,List、Set 和 Queue,再下面是一些抽象类,最后是具体实现类,常用的有 ArrayList、LinkedList、HashSet、LinkedHashSet、HashMap、LinkedHashMap 等等。具体如下图所示:1.1 Connection 接口1.1.1 L
2021-05-21 17:34:35
169
原创 4-Java常用类
Java常用类1. 包装类我们已经知道,Java的数据类型分两种:基本类型:byte,short,int,long,boolean,float,double,char引用类型:所有class和interface类型引用类型可以赋值为null,表示空,但基本类型不能赋值为null:String s = null;int n = null; // compile error!那么,如何把一个基本类型视为对象(引用类型)?比如,想要把int基本类型变成一个引用类型,我们可以定义一个Inte
2021-05-21 17:33:56
212
原创 3-Java面向对象
Java 面向对象1. 面向对象概述1.1 什么是面向对象计算机革命的起源来自机器。编程语言就像是机器。它不仅是我们思维放大的工具与另一种表达媒介,更像是我们思想的一部分。语言的灵感来自其他形式的表达,如写作,绘画,雕塑,动画和电影制作。编程语言就是创建应用程序的思想结构。面向对象编程(Object-Oriented Programming,OOP)是一种编程思维方式和编码架构,是一种 对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。???? 什么是对象:对象是客观存在的事
2021-05-21 17:33:07
315
原创 2-Java基础语法
Java基础语法1. 基本语法1.1 注意事项编写 Java 程序时,应注意以下几点:大小写敏感:Java 是大小写敏感的,这就意味着标识符 Hello 与 hello 是不同的。类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass 。方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保
2021-05-21 17:32:19
274
原创 1-Java语言概述
Java语言概述1. 基础常识1.1 软件软件:软件分为系统软件和应用软件。系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。应用软件是为了某种特定的用途而被开发的软件。它可以是一个特定的程序,比如一个浏览器。也可以是一组功能联系紧密,可以互相协作的程序的集合,比如微软的Office软件。也可以是一个由众多独立程序组成的庞大的软件系统,比如AutoCAD。与用户交互的方式:图形化界
2021-05-21 17:31:37
427
原创 IDEA中@Test测试Scanner无法在控制台输入的问题
问题描述:IDEA中@Test测试Scanner无法在控制台输入的问题在IDEA中Junit使用Scanner语句,控制台会出现无法输入的问题,如下:在“请输入编号:”这里,你会发现无论你如何输入,它就是没结果。解决方案:选择如下选项:添加一句话:-Deditable.java.test.console=true成功输入:...
2021-04-30 16:43:14
3051
4
翻译 configure、 make、 make install 背后的原理
configure、 make、 make install 背后的原理前言一、简介二、这些脚本是怎么产生的1.实例过程2.创建 configure 脚本3、创建 Makefile 文件4、生成文件5、发布软件三、总结前言如果你之前使用过 Unix 系设备开发,你可能使用过下面这几行命令来安装软件:./configuremakemake install我使用过很多次,但在我刚开始使用 Linux 的时候并不知道这几行命令的意思,只知道安装软件的时候在命令行输入这几行命令就行了。一、简介整
2021-03-26 13:43:16
910
3
原创 centos7关闭防火墙出现: Failed to stop iptables.service: Unit iptables.service not loaded.
项目场景:centos7关闭防火墙出现:Failed to stop iptables.service: Unit iptables.service not loaded.问题描述:centos7执行:service iptables stops关闭防火墙时出现:Redirecting to /bin/systemctl stop iptables.serviceFailed to stop iptables.service: Unit iptables.service not loaded.
2021-03-19 11:11:57
5970
1
原创 对实体 “characterEncoding“ 的引用必须以 ‘;‘ 分隔符结尾
问题描述:Spring配置数据源时报错:org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 8 in XML document from class path resource [applicationContext.xml] is invalid; nested exception is org.xml.sax.SAXParseException; lineNumber: 8; columnNumber
2021-01-19 20:30:43
1067
1
基于STM32的空气质量监测系统.zip
2020-05-08
TwinCAT3_运动控制教程V1.11.pdf
2019-12-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人