Leon's Blog

A programmer who likes to pursue the essence


  • Home

  • Categories

  • About

  • Archives

  • Tags

  • Search

ThreadLocal实现原理

Posted on 2019-06-14 | In Java
Words count in article 1182 | Reading time 5

使用场景

假设我们有一个数据库连接管理类:

Read more »

记系统断电导致文件中出现null符号(^@)问题的解决

Posted on 2019-06-09 | In Linux
Words count in article 991 | Reading time 4

我们的前端数据采集系统是用的树莓派,上面跑着基于Debian的Linux操作系统,用的是EXT4的文件系统格式。之前发现采集到的日志文件末尾偶尔会出现大量的^@,经过一番调研后发现是由于系统突然断电导致的。然后再经过一番google,说是由于文件的metadata修改后变大,但是实际数据由于断电没有写入硬盘,所以会用null符号(^@)来填充。然后想了很多办法来修复这种断电后产生的异常数据(之前因为解决操作系统卡死的问题给我们的盒子加了自动重启线,每隔3天就会自动重启),一直都没有很好的解决,直到听极客时间的Linux操作讲到文件系统的journal mode,再经过一番查找,终于理解了这个问题原理,也找到了解决办法。

Read more »

类加载器与Class类

Posted on 2019-06-05 | In Java
Words count in article 509 | Reading time 2

类加载器分类

类加载器负责根据类的全限定名将class文件加载到JVM内存,生成Class类的对象。它分为以下几种类型:

Read more »

Java8 Optional与NullPointerException

Posted on 2019-06-04 | In Java
Words count in article 295 | Reading time 1

JAVA异常类列举了Java中部分的异常类,其中最常见的当属NullPointerException了,程序员必须小心提防,所幸Java 8中引入了Optional类这个语法糖来更好的处理这个异常。

Read more »

Java异常类

Posted on 2019-06-03 | In Java
Words count in article 160 | Reading time 0

Java常见异常类UML图如下:

Read more »

Linux EXT系列文件系统格式

Posted on 2019-06-01 | In Linux
Words count in article 2210 | Reading time 11

Linux文件系统

computer_hard_drive

Read more »

U盘自动加载

Posted on 2019-05-31 | In Linux
Words count in article 384 | Reading time 1

设置devlabel规则

每次USB插入时,linux创建的设备文件可能不一样,有时候是/dev/sdb1有时候是/dev/sdc1,可以用fdisk -l命令查看。所以需要为usb建立label不管设备文件是哪个,都有一个固定的label的连接指向它。 先用udevadm info -a -p $(udevadm info -q path -n /dev/sdb1)查看U盘信息,再在/etc/udev/rules.d/下面新建一个文件如:11-usb-serial.rules,写入:

Read more »

在Linux上配置SMB服务

Posted on 2019-05-31 | In Linux
Words count in article 76 | Reading time 0
  • 安装smb服务:
    1
    sudo yum install smb
    
  • 修改/etc/samba/smb.conf:
Read more »

MyBatis(2)-连接管理

Posted on 2019-05-28 | In MyBatis
Words count in article 1011 | Reading time 5

MySQL连接管理

在调用SqlSessionFactory的openSession函数时,只是创建了一个DefaultSqlSession实例,并没有真正去连接MySQL:

Read more »

MyBatis(1)-DataSource

Posted on 2019-05-27 | In MyBatis
Words count in article 925 | Reading time 4

创建过程

MyBatis主要利用数据源(Data Source)来管理数据库连接,分为:UNPOOLED、POOLED和JNDI,现在主要看下POOLED也就是连接池方式,它的配置如下:

Read more »

多线程安全的单例模式

Posted on 2019-05-26 | In Java , DesignPattern
Words count in article 856 | Reading time 4

单例模式被认为是最简单的设计模式,属于创建型(设计模式又被分为:创建型、结构型和行为型),经常被用到,下面以我在实际项目中用到的一个单例模式为例,看下如何利用经典的两次判空方法令其高效、安全得工作在多线程环境(见代码中注释)。

Read more »

FTP 简介

Posted on 2019-05-25 | In Network
Words count in article 291 | Reading time 1

文件传输协议(File Transfer Protocol),是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式。采用两个TCP连接来传输文件:

Read more »

记Python logging非进程安全踩得坑

Posted on 2019-05-22 | In Python
Words count in article 2324 | Reading time 11

背景

有两个python进程A和B复用同一个logger创建模块,往同一个文件里写日志,用的是TimedRotatingFileHandler,并且每天午夜进行文件rollover,保留15天的文件

Read more »

开篇

Posted on 2019-05-20 | In Other
Words count in article 285 | Reading time 1

转眼间,工作已经5年半了。从传统的高端制造业跨国公司转行加入工业互联网行业初创团队也已经一年半了,负责设备数据收集、传输、存储、计算平台的设计与搭建,以及平台上算法的实现。一直在利用碎片时间通过极客时间、公众号、技术博客等方式进行学习,虽然收获颇丰,并已经将一部分知识实践到了我的平台设计中,但还是感觉学到的知识过于零散,有很多由于目前团队人数、业务量、业务性质的原因没有机会实践,所以希望利用技术博客+代码实践的输出方式,形成自己的知识图谱,加深对知识点及彼此之间联系的理解。同时也希望可以在这个社区里面认识更多志同道合的朋友,一起学习讨论。虽然开始的有些晚,but better late than never!先来梳理一下我所掌握并希望不断精进的技术栈吧:

Read more »

Next Theme Tutorial

Posted on 2019-05-20 | In Tutorial
Words count in article 343 | Reading time 1
NexT is a high quality elegant Jekyll theme ported from Hexo Next. It is crafted from scratch, with love.
Read more »
1 2 3 4
leon

leon

做有用的人,酿有趣的魂

47 posts
15 categories
23 tags
RSS
GitHub Email
Friends
  • Hope
  • Bowen
  • 徐靖峰
  • Hollis
  • Idx
  • 蹲厕所的熊
  • CodingLabs
  • Mengkang
  • 梁桂钊
  • zhangzhenling
  • 周振兴
  • 郭俊
  • 张友东
  • Format
  • 阿里中间件团队博客
© 2020 leon
Powered by Jekyll
Theme - NexT.Muse