摘要: Mybatis源码分析(一) Mybatis的运行过程主要分为两步,第一步读取配置文件将配置缓存到Configuration对象,用于构建SqlSessionFactory,第二步为SqlSession的执行过程。其中SqlSession的过程会比较难,而第一步相对来说比较容易看懂,相对简单点。 以 阅读全文
posted @ 2019-09-24 14:55 丁茜萌萌哒 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 缓存的概念大家都知道,但是Mybatis缓存你知道吗?也许很多人知道Mybatis有一级缓存和二级缓存但是不知道具体是什么。下面我们一起来探讨一下Mybatis的一级缓存 什么是Mybatis的缓存 所谓Mybatis的缓存就是在执行一条sql之后,Mybatis会将该sql语句缓存起来,当再次执行 阅读全文
posted @ 2019-09-23 12:40 丁茜萌萌哒 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 内核态:cpu可以访问内存的所有数据,包括外围设备,例如硬盘,网卡,cpu也可以将自己从一个程序切换到另一个程序。 用户态:只能受限的访问内存,且不允许访问外围设备,占用cpu的能力被剥夺,cpu资源可以被其他程序获取。 为什么要有用户态和内核态? 由于需要限制不同的程序之间的访问能力, 防止他们获 阅读全文
posted @ 2019-09-23 09:26 丁茜萌萌哒 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 管道 管道是Linux支持的最早的IPC(进程间通信)方式,可以分为有名管道和无名管道 无名管道 1. 管道是半双工,只能支持单向流动,两个进程需要建立两个通道来进行通信 2. 无名管道通过pipe()函数创建,只能用于父子进程或者兄弟进程之间 3. 一个进程向管道中写数据,加入到管道缓冲区的尾部, 阅读全文
posted @ 2019-09-23 09:03 丁茜萌萌哒 阅读(189) 评论(0) 推荐(0) 编辑
摘要: Jdk1.6之后对锁的优化 偏向锁 偏向锁的意思就是,偏向于第一个获取该资源的锁,如果在接下来的过程中没有其他的线程获取到该锁,那么该获取到锁的线程将不需要获取同步的操作 自旋锁 竞争锁的线程如果没有获取到锁将会被挂起,当持有锁的线程释放掉锁的话将会被唤醒,这样挂起唤醒的操作效率很低,所以出现了自旋 阅读全文
posted @ 2019-09-22 22:20 丁茜萌萌哒 阅读(168) 评论(0) 推荐(0) 编辑
摘要: Java中的内部类 Java中在类的内部定义的类叫做内部类,而外面的类叫做外部类,内部类可以分为四种,分别是静态内部类,成员内部类,局部内部类,匿名内部类 静态内部类 在静态内部类中可以访问外部类的静态方法和静态变量,即使是private类型的。 静态内部类的实例化不需要依赖于外部类 成员内部类 将 阅读全文
posted @ 2019-09-22 22:16 丁茜萌萌哒 阅读(179) 评论(0) 推荐(0) 编辑
摘要: Java深拷贝和浅拷贝的区别 浅拷贝 被复制的对象的所有的变量都与原对象有相同的值,而所有的引用对象仍然指向原来的对象。换言之,浅拷贝只是复制所考虑的对象,不复制引用对象。 1 class Experience { 2 private String skill; 3 public void setS 阅读全文
posted @ 2019-09-22 17:02 丁茜萌萌哒 阅读(5120) 评论(1) 推荐(0) 编辑
摘要: Redis的数据都是存放在内存当中的,假如有一天Redis宕机了,那么数据将会全部丢失了。所以需要有一种机制来解决这种问题,Redis提供了持久化的机制。一种是RDB(Redis默认的),另一种是AOF。 RDB:在指定的时间间隔内,将数据写入到硬盘中。 RDB的原理: 大家都知道Redis是单线程 阅读全文
posted @ 2019-08-01 14:20 丁茜萌萌哒 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 为什么使用索引,有什么好处? 1. 可以加快数据的检索速度 2. 将随机IO转换成顺序IO(因为列值都是按照从小到大排好序的,数据页或是数据在磁盘中都是相连的,这样的数据很快就能读取出来。称为顺序IO) 为什么不对每一个列建索引?页分裂? 1. 从空间角度来说建立一个索引就是建立一个B+树,树中的每 阅读全文
posted @ 2019-07-02 12:58 丁茜萌萌哒 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 初始化本地git仓库: git init 设置签名: git config user.name XXX git config user.email XXX 上面两个是仓库级别的,可以查看.git下的config看到设置的签名 下面是系统用户级别的,可以在~下的隐藏文件.gitconfig中看到 gi 阅读全文
posted @ 2019-07-02 12:53 丁茜萌萌哒 阅读(266) 评论(0) 推荐(0) 编辑