随笔分类 -  Java 进阶

最要介绍 Java 一些深入的知识和应用
摘要:@[TOC] 1 泛型 泛型 的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。 1.1 为什么需要泛型 泛型是JDK1.5才出来的, 在泛型没出来之前, 我们可以看看集合框架中的类都是怎么样的。 以下为JD 阅读全文
posted @ 2018-12-26 11:53 阿进的写字台 阅读(1306) 评论(8) 推荐(7) 编辑
摘要:@[TOC] 1. 并发编程的两个问题 在并发编程中, 需要处理两个关键问题: 线程之间如何通信及线程之间如何同步 通信指的是线程之间是以何种机制来交换信息, 在命令式编程中, 线程之间的通信机制有两种:共享内存和消息传递。在共享内存的模型中, 线程之间共享程序的公共状态, 通过读写内存中的公共状态 阅读全文
posted @ 2018-12-11 15:35 阿进的写字台 阅读(1146) 评论(0) 推荐(1) 编辑
摘要:@[TOC] 在 Java 中, 枚举, 也称为枚举类型, 其是一种特殊的数据类型, 它使得变量能够称为一组预定义的常量。 其目的是强制编译时类型安全。 因此, 在 Java 中, enum 是保留的关键字。 1. 枚举的定义 在 Java 是在 JDK 1.4 时决定引入的, 其在 JDK 1.5 阅读全文
posted @ 2018-12-03 11:03 阿进的写字台 阅读(871) 评论(0) 推荐(4) 编辑
摘要:@[TOC] 1 HashMap在JAVA中的怎么工作的? 基于Hash的原理 2 什么是哈希? 最简单形式的 hash,是一种在对任何变量/对象的属性应用任何公式/算法后, 为其分配唯一代码的方法。 一个真正的hash方法必须遵循下面的原则 哈希函数每次在相同或相等的对象上应用哈希函数时, 应每次 阅读全文
posted @ 2018-11-28 09:00 阿进的写字台 阅读(939) 评论(2) 推荐(5) 编辑
摘要:mybatis的高级结果映射可以很轻松的帮助我们处理一对一, 一对多的数据关系。 1 数据准备 1.1 数据库 创建以下的名为 mybatis 的数据库, 并在其下创建4个表。 在此就不贴出来建表的 SQL 语句了 , 感兴趣的可以去 "我的 Github:mybatis mapping" 中获取。 阅读全文
posted @ 2018-10-14 11:51 阿进的写字台 阅读(2047) 评论(2) 推荐(1) 编辑
摘要:@[TOC] 在使用 mybatis 过程中, 当手写 JavaBean 和 XML 写的越来越多的时候, 就越来越同意出错。这种重复性的工作, 我们当然不希望做那么多。 还好, mybatis 为我们提供了强大的代码生成 MybatisGenerator 。 通过简单的配置, 我们就可以生成各种类 阅读全文
posted @ 2018-10-13 12:00 阿进的写字台 阅读(5975) 评论(3) 推荐(2) 编辑
摘要:在 "mybatis源码 解析配置文件(三)之配置文件Configuration解析" 中, 讲解了 Configuration 是如何解析的。 其中, mappers作为configuration节点的一部分配置, 在本文章中, 我们讲解解析mappers节点, 即 xxxMapper.xml 文 阅读全文
posted @ 2018-10-04 00:37 阿进的写字台 阅读(1165) 评论(0) 推荐(0) 编辑
摘要:@[TOC] 缓存的重要性是不言而喻的。 使用缓存, 我们可以避免频繁的与数据库进行交互, 尤其是在查询越多、缓存命中率越高的情况下, 使用缓存对性能的提高更明显。 mybatis 也提供了对缓存的支持, 分为一级缓存和二级缓存。 但是在默认的情况下, 只开启一级缓存(一级缓存是对同一个 SqlSe 阅读全文
posted @ 2018-09-30 13:28 阿进的写字台 阅读(6326) 评论(3) 推荐(2) 编辑
摘要:@[TOC] 最近在看Mybatis的源码, 在阅读解析 XML 配置文件的过程中, 发现使用到了建造者(Builder)模式。 因此, 打算重温一下该设计模式。 由来 假设我们需要画一个小人, 我们可能会有以下的构造函数定义: 看到这么一个构造函数, 估计我们自己以后回来看的时候都懵了, 这么多参 阅读全文
posted @ 2018-09-14 00:27 阿进的写字台 阅读(1916) 评论(2) 推荐(1) 编辑
摘要:@[TOC] 代理模式(静态代理) 代理模式是为其他对象提供一种代理以控制对这个对象的访问。 定义上也不算好理解, 上一个 《大话设计模式》 的图。 Subject 类(一般是抽象类或接口), 定义了一个方法。 RealSubject 类实现了这个接口, 正常的情况我们只需要 new 出这个类的实例 阅读全文
posted @ 2018-09-03 21:58 阿进的写字台 阅读(933) 评论(1) 推荐(0) 编辑
摘要:@[TOC] 并发编程为我们带来了很多便利, 但同时也带来了线程安全问题。 1 线程安全 线程安全性的定义: 当多个线程访问某一个类时, 这个类始终能表示出正确的行为, 那么就称这个类是线程安全的。 其产生的原因可以归结如下: 1.共享数据: 只有共享的数据才会产生带来安全性问题。 如果是方法内部声 阅读全文
posted @ 2018-09-01 12:52 阿进的写字台 阅读(609) 评论(0) 推荐(1) 编辑
摘要:@[TOC] 定义 Java 中有两种线程: 一种是用户线程(User Thread),一种是守护线程(Daemon Thread)。 守护线程是一种特殊的线程, 它的特殊有“陪伴”的含义, 当线程中不存在非守护线程时, 则守护线程自动销毁。 垃圾回收线程就是一种守护线程, 当线程中没有非守护线程了 阅读全文
posted @ 2018-08-29 22:58 阿进的写字台 阅读(567) 评论(0) 推荐(0) 编辑
摘要:主要讲解了 HashMap 的使用和构造, 并详细分析了 tableSizeFor 函数的原理 阅读全文
posted @ 2018-08-28 23:32 阿进的写字台 阅读(567) 评论(0) 推荐(0) 编辑
摘要:本文主要讲解了 Java 多线程的一些状态及其相关转换 阅读全文
posted @ 2018-08-27 23:46 阿进的写字台 阅读(624) 评论(0) 推荐(0) 编辑
摘要:介绍了 Thread 类相关的优先级 阅读全文
posted @ 2018-08-23 23:23 阿进的写字台 阅读(1308) 评论(1) 推荐(0) 编辑
摘要:本文介绍初步介绍 Thread 类 和 Runnable 使用的方法, 为后续的多线程深入做铺垫。 阅读全文
posted @ 2018-08-21 23:44 阿进的写字台 阅读(865) 评论(2) 推荐(1) 编辑

点击右上角即可分享
微信分享提示