记一次sftp工具类导致jvm频繁GC事件

背景项目中需要使用sftp进行远程文件的读取,入库。原有代码中存在一个SFTPUtil类,底层使用的是jsch库调用方法。经过事件前一天正好进行了发版,上线版本中,我修改了原有SFTPUtil中的一个问题:原有代码读取完成了之后,没有关闭连接,导致读取了文件之后,连接一直保持着。我在此次版本中关闭了连接。当天中午,
...
阅读全文

Java分派

首先来看以下代码的运行结果public class StaticDispatch { static abstract class Human { } static class Man extends Human { } static class Woman extends Hum
...
阅读全文

Java为什么会有并发问题?

因为Java是一种多线程的访问处理模型。所以当一个请求过来的时候,Java会将产生一个线程来处理这个请求。如果多个线程访问同一个共享变量的时候,就会出现并发问题。所以,并发问题产生的条件之一是“共享变量”。那么什么样的变量是共享变量呢?这就涉及到Java中的运行时数据区结构了Java运行时数据区
...
阅读全文

MySQL中的字符集

我们在开发过程中可能会碰到MySQL字符集的问题,有时候发现存入某个字符,数据库存储不对。有时候发现,存储某个字符正确,但是获取到的又是乱码。这种情况下一个一个去网上搜索,实在是浪费时间。这里总结一下MySQL中字符集的规则以及配置方法,下次遇到问题时,不妨从这里总结的入手。首先,先了解两个概念。字符集和校对规则MySQL包含字符集(character
...
阅读全文