Loading

摘要: 停止线程有四种方式 方式一 通过volatile标识去判断退出线程 public class VolatileCanStop implements Runnable{ private static volatile boolean canceled = false; @Override public 阅读全文
posted @ 2022-01-23 22:32 邓小白 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 方法一 继承Thread类 public class Thread01 extends Thread{ @Override public void run() { System.out.println(Thread.currentThread().getName()+" is running..." 阅读全文
posted @ 2022-01-23 22:32 邓小白 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 操作模块 可支持的 3 种基本操作,即 PUT、GET 和 DELETE PUT:新写入或更新一个 key-value 对; GET:根据一个 key 读取相应的 value 值; DELETE:根据一个 key 删除整个 key-value 对。 存储模块 Redis是一个非关系型数据库,基本的数 阅读全文
posted @ 2022-01-23 22:31 邓小白 阅读(118) 评论(0) 推荐(0) 编辑
摘要: lsof命令 注意事项:lsof在linux环境下可能需要进行安装后才能使用 安装命令: yum install lsof lsof -i 显示所有打开的端口 lsof -i:8080 显示所有打开8080端口的进程 netstat命令 netstat -ntlp 查看当前所有tcp端口 netst 阅读全文
posted @ 2022-01-23 22:28 邓小白 阅读(650) 评论(0) 推荐(0) 编辑
摘要: 作用 BlockingQueue为一个阻塞队列,这里的阻塞有两个含义 从队列中获取元素时,如果队列为空,获取元素的线程会等待至队列中有元素再返回。 往队列添加元素时,如果队列已满,添加元素的队列会等待至队列有位置的时候再添加新的元素 特点 BlockingQueue中的元素不能为空 为线程安全的,但 阅读全文
posted @ 2022-01-23 22:27 邓小白 阅读(222) 评论(0) 推荐(0) 编辑
摘要: MyBatis的缓存机制 MyBaits现在已经是市面上最常见的数据库访问框架了,也是用的最频繁的框架中的一种,很多时候我们在开发中,访问数据时在进行优化系统的性能,都会考虑到以缓存这种机制来进行优化。在MyBatis中也有缓存机制,但是在大部分时间里,我们常常都是用的MyBais的默认缓存配置。在 阅读全文
posted @ 2022-01-23 22:26 邓小白 阅读(228) 评论(0) 推荐(0) 编辑
摘要: ROUND_UP 舍入远离零的舍入模式。 在丢弃非零部分之前始终增加数字(始终对非零舍弃部分前面的数字加1)。 注意,此舍入模式始终不会减少计算值的大小。 例如:0.121->0.13 ROUND_DOWN 接近零的舍入模式。 在丢弃某部分之前始终不增加数字(从不对舍弃部分前面的数字加1,即截短)。 阅读全文
posted @ 2022-01-23 22:26 邓小白 阅读(775) 评论(0) 推荐(0) 编辑
摘要: ScheduledExecutorService是一个可以用来定期执行线程任务的线程池,主要功能体现在,周期性执行线程任务和延迟时间来执行线程任务。主要特性体现在下面要讲解的四个方法中 方法一,延迟执行任务,不获取返回值 在指定delay(延迟)之后,执行提交Runnable的任务,返回一个Sche 阅读全文
posted @ 2022-01-23 22:25 邓小白 阅读(537) 评论(0) 推荐(0) 编辑
摘要: Java跟c++语言一样,都是面向对象的语言,那么面向对象的语言都有个共同的两点 在面向对象的软件中,对象(Object)是某个类(Class)的实例。 一切皆对象 在JVM的内存结构中,对象保存在堆内存中,而我们在对对象进行操作时,其实操作的是对象的引用。 那么对象本身在JVM中的结构是什么样的呢 阅读全文
posted @ 2022-01-23 22:25 邓小白 阅读(316) 评论(0) 推荐(0) 编辑
摘要: runAsync和supplyAsync方法,这个两个方法为CompletableFuture的主要使用方式,其主要作用给任务提供异步线程的操作方式 如何使用 CompletableFuture 提供了四个静态方法来创建一个异步操作。 public static CompletableFuture< 阅读全文
posted @ 2022-01-23 22:24 邓小白 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 现象: 工作时遇到某个服务老是频繁重启,日志报错为OOM 分析: 出现OOM是因为整个堆内存不够用了,此时JVM首先尝试扩展更多的空间,其次GC尝试回收内存,前两种方法无果的情况下只能报OOM并退出 可能的情况:内存不够、内存泄漏 尝试解决问题的步骤: 加上JVM参数 -XX:+HeapDumpOn 阅读全文
posted @ 2022-01-23 22:24 邓小白 阅读(1320) 评论(0) 推荐(0) 编辑
摘要: SSM框架是JavaWeb必学的框架,虽说是基本的增删改查的操作,但是面临一些特殊情况的时候,又是还是会显得手足无措,此篇用来记录一下一写特殊场景下的Mybatis框架的应用 1、传入参数为List对象 1.场景复现 首先有如下一张表 MySQL [test]> select * from t_en 阅读全文
posted @ 2022-01-23 22:23 邓小白 阅读(760) 评论(0) 推荐(0) 编辑
摘要: 第一步 打开server.xml文件 第二步 在两处配置位置添加URIEncoding="UTF-8" 第一处 <Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8081" protocol="HTTP/1.1" redir 阅读全文
posted @ 2022-01-23 22:23 邓小白 阅读(185) 评论(0) 推荐(0) 编辑
摘要: Java跟c++语言一样,都是面向对象的语言,那么面向对象的语言都有个共同的两点 在面向对象的软件中,对象(Object)是某个类(Class)的实例。 一切皆对象 在JVM的内存结构中,对象保存在堆内存中,而我们在对对象进行操作时,其实操作的是对象的引用。 那么对象本身在JVM中的结构是什么样的呢 阅读全文
posted @ 2022-01-23 22:02 邓小白 阅读(168) 评论(0) 推荐(0) 编辑
摘要: FORM 功能为指定基础镜像,并且必须是第一条指令。 如果不以任何镜像为基础,那么写法为:FROM scratch。 同时意味着接下来所写的指令将作为镜像的第一层开始 语法: () FROM <image> FROM <image> : <tag> FROM <image> : <digest> 三 阅读全文
posted @ 2022-01-23 21:49 邓小白 阅读(323) 评论(0) 推荐(0) 编辑