自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java直观打印一棵二叉树

引言学习堆排的过程中,总是用数组的形式来保存树型结构,输出也不是很直观。网上找过一些帖子,大家都希望能直观的打印一棵树,想到的方式也很直接,就是节点和节点之间通过斜线连接。 1 / \ 2 3 / \ / \ 4 5 6 7但这样有个问题,如果树达到一定高度,斜线就很难准确的指向对应的数字,除非把斜线的角度和长度随着改变,但这样就涉及到画图,比较麻烦。我们完全可以把斜线去掉。图中 * 代表每个节点,去掉斜线后,无论树有多高都不会出

2021-06-22 18:06:55 1142 1

原创 CentOS7 安装 Oracle 12C

程序员干运维的事,真是头大。第一次在Linux环境下安装Oracle,搜索关键字:CentOS7 安装 Oracle 12C。看了近十篇帖子,流程都差不多:下载依赖包 > 关闭防火墙 > 修改内核参数 > 新增用户 > 修改用户相关配置 > 安装JDK > 解压Oracle安装包 > 安装Oracle。安装Oracle前都比较简单,跟着步骤走就行,主要是不会报什么错,比较顺利,到了安装这一步问题就来了。帖子都是写进入解压目录:database,执行命

2021-06-01 16:34:29 430 1

原创 tomcat是否区分32位和64位

最近项目部署需要在Linux环境进行,以往都是在windows环境部署,安装包等资源也都是经过生产验证的,每次都是无脑直接用。这是第一次在Linux环境部署,资源都要重新找。首先是32位的JDK,然后是tomcat包,项目组svn库正好有一个,如何验证它是32位的还是64位的呢。网上推荐的比较多的方式如下(windows环境):1、打开dos窗口,切换到tomcat解压包的bin目录下,如:E:\apache-tomcat-8.5.59\bin2、输入命令:catalina versi.

2021-05-26 11:25:30 2079

原创 小白组装电脑(上手阶段)

1号凌晨下的单,2号货就全部到齐了,狗东服务就是好。第一天把所有的配件理了一遍, 明白每个配件的对应主板接口、电源接口以及要用到哪些线。买机械盘都没有配任何线,反而是主板配了两条SATA线用来接硬盘的。固态买的M.2直接接主板不用线。显卡只需要接一根电源线(一般是6PIN或8PIN),主板需要接两根电源线(一个是最大的24PIN接口线,一个是标有PSU一般接在主板左上角的8PIN接口线)还有机箱上有很多线(USB2,USB3,音频线,跳线(看起来很小的那几个,连接电源键、重启键、硬.

2020-11-22 16:09:33 2033

原创 小白组装电脑(准备阶段)

很早就听身边的人各种安利,自己组装台式机多么爽。但是对硬件一窍不通,一听组装就感觉上手难度不小,再加上居无定所,笔记本不是更香,组装台式机的想法一直搁置。最近搬了新家,前半辈子是不会再搬了,感觉时候到了。百度走起,关键字组装电脑,看中了https://zhuanlan.zhihu.com/p/81478078,一目了然,对小白比较友好,如下图:...

2020-11-01 18:48:50 3143

原创 字符编码(ASCII、Unicode、UTF-8)

计算机只能处理数字,如果想要处理字符,必须转换成数字,所以就需要对字符进行编码。计算机是美国人发明的,最早只有127个字符被编码到计算机里,这就是ASCII编码,包含英文字母、数字和一些特殊字符。但是ASCII码不能处理中文,所以中国制定了GB2312把中文编码进去,可想而知,其他国家也制定了对应语言的编码。各国标准不一样,多语言的文本会出现冲突,为了解决这个问题,Unicode编码应...

2019-05-09 14:42:18 259

原创 逗号分隔的字符串字段,关联表查询

场景1有两个表,一个表记录了某些产品的公共信息,产品id用逗号分隔拼成字符串作为一个字段;一个表示产品表。如下:公共信息表(info) id pro_ids num 1 12,14 10000.0 2 20,22 200000.0 产品表(product) id name 12 产品12 14 产品14 20...

2019-04-02 19:22:19 4149

原创 通过jstack命令查看线程的生命周期

注:数字顺序不代表先后顺序阻塞三种,同步阻塞,等待阻塞,其他阻塞。同步阻塞(Entry Set),等待获取对象锁的同步队列,有些地方也叫锁池(每个对象都有一个内部锁,monitor监视器)。当某个线程访问一个对象中的Synchronize同步代码块时,如果发现该对象的监视器被别的线程持有,就进入该对象的 Entry Set,当前线程状态变成BLOCKED。等待阻塞(Wait Se...

2019-04-02 14:44:05 648

原创 synchronized的几种加锁方式

1、修饰普通方法(锁住的是当前实例对象)同一个实例调用会阻塞 不同实例调用不会阻塞public class SynchronizedTest { //锁住了本类的实例对象 public synchronized void test1() { try { logger.info(Thread.currentThread().getName...

2019-03-21 14:53:12 12743 4

原创 类初始化中相关代码执行顺序

1、单个类。根据执行结果和注解,便可一目了然。静态优先 -> 属性赋值 -> 代码块执行 -> 构造方法执行public class ClassTest { public static void main(String[] args) { staticFunction(); //TODO 执行main函数,出发类的初始化 } ...

2019-03-20 17:44:52 154

空空如也

空空如也

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

TA关注的人

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