自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 读书-代码整洁之道10-14

解决之道就是保持代码持续整洁和简单。永不让腐坏有机会开始。

2023-06-24 20:56:14 423

原创 读书-代码整洁之道7-9章

异常处理错误处理很重要,但如果它搞乱了代码逻辑,就是错误的做法。try代码就像是事务,catch代码块将程序维持在一种持续状态。在编写可能抛出异常的代码时,最好先写出try-catch-finally 语句。可控异常的代价师违反开放/闭合原则。如果你在编写一套关键代码库,则可控异常有时也会有用,你必须捕获异常。但对于一般的应用开放,其依赖成本要高于收益。定义异常时,最重要的考虑是如何捕获它们。别返回null值,别传递null值。除非API要求传递null值,否则就要尽可能避免传递null值。

2023-06-18 20:28:13 433

原创 Linux 的一些文件复制、移动、删除的命令

最近在弄安卓项目,有一部分主要是涉及安卓本地文件的切换,最终确定通过命令来实现文件的切换。现简单记录下需要使用的一些命令吧!移动文件或文件夹 mv sourcePath targetPath命令格式运行结果mv source_file(文件) dest_file(文件)将源文件名 source_file 改为目标文件名 dest_filemv source_directory(目录) dest_directory(目录)将文件 source_file 移动到目标目

2021-11-03 14:27:11 214

原创 Spring Boot中使用Feign调用时could not be queued for execution and no fallback available以及RejectedExecution

仅供参考(本人也是一知半解,自己还在混乱中,写这个也只是记录一下)先上报错其实还是很好懂的,不就是提交的任务被线程池拒绝了。但要怎么解决呢?en…en…那我们来一起了解下线程池。首先记住以下参数:1. corePoolSize:核心线程数大小:不管它们创建以后是不是空闲的。线程池需要保持 corePoolSize 数量的线程,除非设置了 allowCoreThreadTimeOut。2. maximumPoolSize:最大线程数:线程池中最多允许创建 maximumPoolSize 个线程

2021-10-22 10:06:43 3669

原创 react项目启动失败 Module not found

前端同学太忙,改点样式这种小事当然是自己动手~ o(* ̄▽ ̄*)o结果...别人都能运行的项目,就我不行!!!以下是项目配置package.json.env通过网上搜索进行了各种各样的尝试1.删除package-lock.json和node_modules,再重新npm install 或 yarn install2.切换node版本(怀疑版本不兼容,把node,npm都设置成和同事的一致)3.清除npm缓存npm cache clean,强制清除npm cach...

2021-10-22 09:47:16 3726

原创 启动时 Command line is too long

IDEA启动遇到Error running 'WebApplication': Command line is too long. Shorten command line for WebApplication or also for Spring Boot default configuration解决方法很简单:在 == .idea == 文件夹中找到== workspace.xml ==文件 找到<component name="PropertiesComponent">在其中添加&

2021-01-04 10:49:47 196 1

原创 IDEA 误删除分支

使用git一段时间了,但还是不怎么会使用,不小心将项目中一个文件夹删除还未提交,或者已经提交, 此时想要恢复数据该怎么办?以下仅供参考!!! 删除代码已提交: git log -g #查看之前的commit历史找到你想要的commit记录后(q退出),使用:git checkout -b 新分支名 版本号 #这是将这处的代码拉一个新的分支,想要其它的操作可以去搜一下到此就可你看到你之前的代码了。 删除代码未提交 如果是这种情况你可以在Local Hist

2020-12-18 18:17:13 3082 2

堆(heap)和栈(stack)的区别

JVM 的内存主要分为3个分区堆区(Heap)– 只存对象(数组)本身(引用类型的数据),不存基本类型和对象的引用。JVM只有一个堆区,这个“堆”是动态内存分配意义上的堆——用于管理动态生命周期的内存区域。JVM的堆被同一个JVM实例中的所有Java线程共享,它通常由某种自动内存管理机制所管理,这种机制通常叫做“垃圾回收”(garbage collection,GC)。JVM规范并不强制要求J...

2020-03-05 21:10:56 307

Mybatis:一级缓存和二级缓存

缓存Cache概述存在于内存中的临时数据作用减少和数据库的交互次数,提高执行效率适用场景经常查询并且不经常改变的;数据的正确与否对最终结果影响不大的。(数据的有效性和实时性)不适用经常改变的数据;数据的正确与否对最终结果影响很大的一级缓存Mybatis 使用到了两种缓存:本地缓存(local cache)和二级缓存(second level cac...

2020-03-05 21:09:39 124

原创 存储过程与函数的区别

存储过程 procedure函数 Function概述为了完成特定功能的SQL语句集由一个或多个 SQL 语句组成的子程序声明程序头部声明用procedure,不需要返回类型程序头部声明用function,需要描述返回类型,且函数中必须包含一个有效的return语句功能实现的功能要复杂一点实现的功能针对性比较强调用方式可以作为一个独立的PL/...

2019-12-04 16:00:55 259

原创 Eclipse和MyEclipse的区别

MyEclipse一开始只是eclipse的一个插件而已,功能还是eclipse比较齐全。但是随着MyEclipse的发展,它几乎独立于eclipse可以独当一面了。MyEclipse已经把在开发过程中所有可能会用到的插件都配置完成了,在使用的时候,可以直接调用。eclipse没有什么插件,在开发的时候需要哪些插件可以到网上下载,然后导入到项目中使用。MyEclipse主要应用于Ja...

2019-11-27 16:01:10 703

原创 Java、C与C++

Java 是由 C++发展而来的,保留了 C++的大部分内容,其编程方式类似于 C++。但 Java 的句法更清晰、规模更小、更易学。Java与C/C++之间的区别之处:指针Java 没有指针的概念。 在 C/C++中,指针操作内存时,经常会出现错误。而在Java中是没有指针这一概念的,因此也有效地防止了一系列由指针引起的操作层失误(如指针悬空所造成的系统崩溃),更有利于 Java 程序...

2019-11-26 17:26:31 639

原创 JSP九大内置对象

九大内置对象

2019-11-22 11:24:24 193

原创 int和Integer有什么区别

Java是一个近乎纯洁的面向对象编程语言,但是为了编程的方便还是引入了基本数据类型,但是为了能够将这些基本数据类型当成对象操作,Java为每一个基本数据类型都引入了对应的包装类型(wrapper class),int的包装类就是Integer,从Java 5开始引入了自动装箱/拆箱机制,使得二者可以相互转换。Java 为每个原始类型提供了包装类型:原始类型: boolean,char,byt...

2019-11-22 10:01:23 80

原创 前端路由和后端路由

什么是路由?路由是根据不同的 url 地址展示不同的内容或页面;什么是后端路由?浏览器在地址栏中切换不同的url时,每次都向后台服务器发出请求,服务器响应请求,在后台拼接html文件传给前端显示, 返回不同的页面, 意味着浏览器会刷新页面,网速慢的话说不定屏幕全白再有新内容。一般情况后端路由的项目有以下几个特点:前端的页面资源和后端服务是在一个项目中,发布部署的时候也是在一块...

2019-11-17 17:19:30 247

原创 MySQL与Oracle的区别

一、对事务的提交MySQL默认是自动提交,而Oracle默认不自动提交,需要用户手动提交,需要在写commit;指令或者点击commit二、分页查询MySQL是利用limit就可以实现分页;而Oracle则是需要用到伪列ROWNUM和嵌套查询三、事务隔离级别MySQL是read commited的隔离级别,而Oracle是repeatable read的隔离级别,同时二者都支持seria...

2019-11-17 11:24:48 209

原创 Jsp的四个作用域 :page、request、session和application

jsp 的四个作用域 :page、request、session和applicationRequest域:web服务器收到客户端的http请求,会针对每一次请求分别创建一个 request对象和 response对象代表请求和响应【1】生命周期:在service 方法调用前由服务器创建,传入service方法。整个请求结束,request生命结束。【2】HttpServletReques...

2019-11-15 15:35:40 1210

原创 状态码含义

1xx:信息消息: 描述:100Continue 服务器仅接收到部分请求,但是一旦服务器并没有拒绝该请求,客户端应该继续发送其余的请求。101Switching Protocols 服务器转换协议:服务器将遵从客户的请求转换到另外一种协议。2xx:成功消息: 描述:200OK 请求成功(其后是对GET和POST请求的应答文档。)201...

2019-11-10 14:19:42 373

原创 HTTP 方法:GET 与POST

在客户机和服务器之间进行请求-响应时,两种最常被用到的方法是:GET 和 POST。(1)GET - 从指定的资源请求数据。(2)POST - 向指定的资源提交要被处理的数据...

2019-10-26 21:25:26 223

原创 synchronized 与 volatile

synchronized 和 volatile 关键字的作用

2019-09-28 15:38:32 188

原创 MySQL中 any,some,all,in的区别

any

2019-09-16 18:45:12 909

原创 单例模式

单例模式

2019-09-08 20:22:31 1690

原创 Mysql中实现全外连接

MySql中多表查询只提供了内连接,左外连接与右外连接:table_reference {[INNER] JOIN | {LEFT|RIGHT} [OUTER] JOIN} table_reference ON conditional_expr1】INNER JOIN ON内连接(只写join时默认为内连接)SELECT * FROM emp e JOIN dept d ON e.dept...

2019-09-01 17:31:36 25800

原创 MYSQL on和where的区别

多表查询语法结构:table_reference {[INNER] JOIN | {LEFT|RIGHT} [OUTER] JOIN} table_reference ON conditional_expr在多表查询时,ON和where都表示筛选条件,on先执行,where后执行。区别:外连接时,on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。而wh...

2019-09-01 17:31:19 21543 2

原创 网络编程:TCP与UDP

TCP

2019-08-20 14:47:45 162

原创 三次握手和四次挥手

三次握手

2019-08-17 14:51:10 102

原创 sleep和wait的区别

sleep和wait的区别:1、 这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类。sleep是Thread的静态类方法,static void sleep(long millis) 在指定的毫秒数内让当前正在执行的线程休眠(暂停执行),此操作受到系统计时器和调度程序精度和准确性的影响。void wait() 在其他线程调用此对象的 notify...

2019-08-14 14:51:41 234

原创 多线程执行过程(生命周期)

多线程执行过程(生命周期)

2019-08-14 14:46:56 1639

原创 代理模式

代理模式:分为静态代理、动态代理组成:抽象角色:通过接口或抽象类声明真实角色实现的业务方法。代理角色:实现抽象角色,是真实角色的代理,通过真实角色的业务逻辑方法来实现抽象方法,并可以附加自己的操作。真实角色:实现抽象角色,定义真实角色所要实现的业务逻辑,供代理角色调用。优点:(1)、职责清晰真实的角色就是实现实际的业务逻辑,不用关心其他非本职责的事务,通过后期的代理完成一件完成事务,...

2019-08-09 18:56:54 229

原创 Thread和Runnable区别

Thread

2019-08-07 15:45:17 170

原创 进程和线程区别

进程:就是一个在内存中独立运行的程序,有自己的地址空间进程(Process)是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。主要特征动态性:进程的实质是程序在多道程序系统中的一次执行过程,进程是动态产生,动态消亡的。并发性:任何进程都可以同其他进程一起并发执行独立性:进程是一个能...

2019-08-06 14:43:09 192

原创 & 和 && 的区别

&&运算符简洁与或者短路与只有两个操作数都是true,结果才是true。如果&&左边的表达式的值是 false,右边的表达式会被直接短路掉,不会进行运算。&运算符(1)按位与:两个为1才为1【解义】对两个整数的二进制形式逐位进行逻辑与 运算,原理:1|0=0,0|0=0,1&1=1;0&1=0等。4&-5:4的二进制形...

2019-08-04 19:56:25 324

原创 面向对象三大特性

面向对象三大特性:封装、继承、多态1、封装在面向对象程式设计方法中,封装(Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。要访问该类的代码和数据,必须通过严格的接口控制。封装的优点:良好的封装能够减少耦合。类内部的结构可以自由修改。可以对成员变量进行更精确的控制。隐藏信息,实现细节。封装可以通过private来体现例:要访问类中私有成员...

2019-08-04 19:37:13 326

原创 设计模式

设计模式设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。主要关注软件系统的设计,与具体的实现语言无关。使用设计模式的目的:为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。分类:1、创建型模式工厂方法(factory method)模式 、抽象工厂(abstract factory)模式、原型(prototype)模式、单例...

2019-07-18 17:48:31 100

原创 在 JAVA 中跳出多重嵌套循环的方式

一、break跳出循环在外面的循环语句前定义一个标号, 然后在里层循环体的代码中使用带有标号的break语句,即可跳出外层循环public class Test { public static void main(String[] args) { For: for (int i = 0;; i++) { for (int j = 0; j < 3; j++) { i...

2019-07-11 14:09:45 304

原创 观察者模式

观察者模式 观察者模式(有时又被称为模型(Model)-视图(View)模式、源-收听者(Listener)模式或从属者模式)是软件设计模式的一种。 在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知。 这通常透过呼叫各观察者所提供的方法来实现。此种模式通常被用来实现事件处理系统。当对象间存在一对多关系时,则使用观察者模式(Observer Pa...

2019-07-09 00:14:37 117

原创 List和Set

接口 List 有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。接口 Set一个不包含重复元素的 collection。更确切地讲,set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2,并且最多包含一个 null 元素。正如其名称所暗示的,此接...

2019-07-07 18:51:34 2809

原创 手动实现LinkedList

LinkedListList 接口的链接列表实现。实现所有可选的列表操作,并且允许所有元素(包括 null)。除了实现 List 接口外,LinkedList 类还为在列表的开头及结尾 get、remove 和 insert 元素提供了统一的命名方法。这些操作允许将链接列表用作堆栈、队列或双端队列。构造方法摘要LinkedList() 构造一个空列表。LinkedList(Collec...

2019-06-19 23:15:42 224

原创 手动实现ArrayList

ArrayListList 接口的大小可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。构造方法:ArrayList() :构造一个初始容量为 10 的空列表。ArrayList(Collection<? extends E> c) : 构造一个包含指定 collection 的元素的列表,这些元素是按照该 collection 的迭代器返回它们的顺...

2019-06-17 11:48:49 475

原创 接口与标识接口

接口:interface1、接口(Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。2、特点:(1)接口不能用于实例化对象,且接口没有构造方法,接口中的方法都是抽象的。(2)接口同类一样,也能够拥有属性与方法,但:接口中的属性必须是public static final;方法必...

2019-06-09 22:48:03 4080

空空如也

空空如也

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

TA关注的人

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