摘要:
# 存储引擎 MySQL 中的数据用各种不同的技术存储在磁盘或内存中,这些技术会采用不同的存储机制、索引技巧、锁定水平,提供不同的功能和能力,提供这些技术能力的组件被称为存储引擎。通过选择不同的存储引擎,可以获得不同的速度或者功能,从而改善应用的整体功能。 MySQL 的存储引擎种类很多,例如 In 阅读全文
摘要:
为什么要使用 Lock 锁 前面我们已经说个,使用同步有两种方式,一种是不使用锁,通过 CAS 来实现,另一种方式是加锁。加锁又分为两种,一种是使用 synchronized,还有一种就是使用 Lock,今天学习的就是 Lock。 既然已经有那么多方式可以实现同步,为什么还要使用 Lock 呢? s 阅读全文
摘要:
Callable接口 前面我们提到了创建线程的三种方法,继承 Thread 类,实现 Runnable 接口,通过线程池创建。今天学习创建线程的另一种方式,通过 Callable 接口来创建。 Callable 接口与 Runnable 接口一样,可以给线程提交一个任务让其执行。Callable 接 阅读全文
摘要:
什么是反射 反射就是在程序运行的过程中,动态的获取类的信息或者动态的调用对象的方法或属性。通过反射机制,对于任意一个类,都能知道它的属性和方法,对于任意一个对象,都能调用它的任意一个属性和方法(包括私有属性和方法)。这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 我们知道 阅读全文
摘要:
为什么需要序列化 我们知道,java程序在运行时,对象是在对上创建的,如果程序停止了,那么这个对象也不复存在了。当我们需要将对象存储在硬盘上时,就需要序列化的技术了。 序列化就是一种将对象转换成字节序列的过程。反序列化就是将字节序列代表的对象恢复成原来的样子。通过序列化与反序列化,我们可以实现进程间 阅读全文
摘要:
IO流 在 Java IO 中,流是一个核心的概念。流表示的是连续的数据,称之为数据流。我们既可以读取流中的数据,也可向流中写入数据。在 Java IO 中,根据读写数据的类型不同,可以将流分为两种类型:字节流(按字节读取数据),字符流(按字符读取数据)。 java.io 包提供了操作流的类,而这些 阅读全文
摘要:
File类的静态成员变量 1、static String pathSeparator 与系统有关的路径分隔符,为了方便,它被表示为一个字符串。(Windows 下默认为 ‘ ; ’ ) 2、static char pathSeparatorChar 与系统有关的路径分隔符。 3、static Str 阅读全文
摘要:
JVM体系结构 什么是JVM JVM,即java虚拟机,英文名是Java Virtual Machine,它是运行在操作系统之上的软件,在实际的计算机上模拟计算机的各个功能的一种虚拟的计算机。JVM将字节码文件转换成操作系统能够识别的指令,从而实现了跨平台的特性。 一个java应用程序对应着一个进程 阅读全文
摘要:
转载:sql语句练习50题(Mysql版) 测试数据 --建表 --学生表 CREATE TABLE `Student`( `s_id` VARCHAR(20), `s_name` VARCHAR(20) NOT NULL DEFAULT '', `s_birth` VARCHAR(20) NOT 阅读全文
摘要:
线程池 什么是线程池 我们可以在不影响一个线程的情况下创建另一个线程去完成任务,这样可以提高执行效率。但是如果同一时刻有大量的任务需要执行,而这些任务又比较简单,那么每次都创建一个新的线程肯定会耗费很多时间。为了减少创建线程所花费的时间,人们想出了线程池的办法。线程池中预先创建了一定数量的线程,当需 阅读全文