Back to
top
杨挺的博客 | Tommy's Blog

Tommy Yang’s Blog

一生想做浪漫技客

详解 HiveUDF 函数

"详解 HiveUDF 函数"

Hive 函数 相信大家对 Hive 都不陌生,那么大家肯定用过 Hive 里面各种各样的函数。可能大家都会使用这些函数,但是没有自己动手去写过 Hive 里面的函数。下面主要来介绍一下 Hive 里面的各种函数。 依赖 开发 Hive UDF 之前,我们需要引入一个 jar,这个 jar 就是 hive-exec,里面定义了各种我们自定义的 UDF 函数的类型:UDF、GenericUD...

StringBuffer 和 StringBuilder 总结

"StringBuffer 和 StringBuilder"

StringBuffer 和 StringBuilder 介绍 大多数情况下, StringBuffer 的速度要比 String 快; StringBuilder 要比StringBuffer快;StringBuffer 和 StringBuilder 都是 AbstractStringBuilder 的子类,区别在于StringBuffer 的方法大部分都有 synchronized...

MySQL 查询优化(一)

"EXPLAIN 详解"

MySQL 查询优化 优化之EXPLAIN 使用 EXPLAIN 可以帮助分析自己写的 SQL 语句,看看我们是否用到了索引。 按以下两个 SQL 新建两张表 CREATE TABLE `demo` ( `ID` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(64) COLLATE ut...

JavaWeb 中 POJO、BO、VO、DO、DTO、DAO、PO 详细介绍

"POJO、BO、VO、DO、DTO、DAO、PO"

PO PO(持久对象)是 Persistent Object 的缩写,用于表示数据库中的一条记录映射成 Java 对象。PO 仅仅用于表示数据,没有任何数据操作。通常遵守 Java Bean 规范,拥有 getter/setter 方法。 BO BO(业务对象)是 Business Object 的缩写,用于表示一个业务对象,可以进行 PO 与 VO/DTO 之间的转换。BO 通常位于业务...

ArrayBlockingQueue 源码详解

"ArrayBlockingQueue"

BlockingQueue 和 BlockingDeque 内部实现分析 BlockingQueue 介绍 BlockingQueue 继承自 Queue 接口,下面看看阻塞队列提供的接口; public interface BlockingQueue<E> extends Queue<E> { /** * 插入数据到队列尾部(如果立即可行且不会...

深入理解 JVM(一)

"JVM 内部结构"

深入浅出 JVM 该篇主要是深入理解 Java 虚拟机-第二版的读书笔记总结 - JVM 内部结构。 目录 运行时数据区域 垃圾回收算法 垃圾收集器 运行时数据区域 线程私有区域 程序计数器 Java 虚拟机栈 本地方法栈 线程共享区域 Java 堆 方法区...

开源项目 JavaInterview 分享

"开源快乐,一起进步"

项目地址; 如果觉得有一丝丝的帮助,希望大家给个 star 鼓励以下;同时也希望大家多多 fork,一起加入进来。 为什么选择做这个开源项目 首先,希望提高自己;因为选择做这个,自己肯定就会花时间去提高自己的技术,多看技术书籍,多在项目中进行实践。 其次,想让自己坚持做一件有意义的事情;因为我想在 Github 上靠自己的努力维护一个万级别 star 的项目,我会一直努力去做好这件事情。...

Google API 初探

"如何获取凭证"

Goole API 如何获取凭证 该篇主要介绍我们如果想使用 google api,我们需要如何去获取凭证,具体步骤如下。 google 账户创建 浏览器输入 https://google.com。 点击右上角的 Sign In 按钮。 点击下方的 Create account 按钮。 如下图一,选择 To ma...

值得大家去瞅一瞅的 Github 学习项目

"没事的时候多看看,提高自己"

介绍 今天主要跟大家分享一些 Github 上值得去学习学习的项目,特别是刚毕业,或者在校大学生等需要快速进步的同学们更应该去看看。 JavaInterview 最全的Java技术知识点,以及Java源码分析; Java 面试总结和面试题目分享。 CS-Notes 分享 Tech Interview Guide 技术面试必备基础知识、Leetcode 题解、Java、C++、Python...

史上最全 Java 中各种锁的介绍

"各种锁的介绍"

锁的分类介绍 乐观锁与悲观锁 锁的一种宏观分类是乐观锁与悲观锁。乐观锁与悲观锁并不是特定的指哪个锁(Java 中也没有那个具体锁的实现名就叫 乐观锁或悲观锁),而是在并发情况下两种不同的策略。 乐观锁(Optimistic Lock)就是很乐观,每次去拿数据的时候都认为别人不会修改。所以不会上锁。但是如果想要更新数据, 则会在更新之前检查在读取至更新这段时间别人有没有修改过这个数据。如果...