摘要:
阅读目录 一、JDBC常用的API深入详解及存储过程的调用1、存储过程(Stored Procedure)的介绍2、JDBC调用无参存储过程3、JDBC调用含输入参数存储过程4、JDBC调用含输出参数存储过程二、JDBC的事务管理1、JDBC实现事务管理2、通过代码实现事物的管理三、数据库连接池(d 阅读全文
随笔档案-2017年07月
面向对象编程(三)——程序执行过程中内存分析
2017-07-17 23:11 by GarfieldEr007, 1883 阅读, 收藏, 编辑
摘要:
阅读目录 内存分析(SxtStu.java)对于java 和内存之间的注意事项 阅读目录 内存分析(SxtStu.java)对于java 和内存之间的注意事项 内存分析(SxtStu.java)对于java 和内存之间的注意事项 内存分析(SxtStu.java) Java程序运行在JVM上,可以把 阅读全文
面向对象编程(十)——继承之Super关键字及内存分析
2017-07-17 23:08 by GarfieldEr007, 295 阅读, 收藏, 编辑
摘要:
阅读目录 Super关键字画内存分析图了解程序执行的整个过程 阅读目录 Super关键字画内存分析图了解程序执行的整个过程 Super关键字画内存分析图了解程序执行的整个过程 Super关键字 在JAVA类中使用super来引用父类的成分,用this来引用当前对象,如果一个类从另外一个类继承,我们n 阅读全文
面向对象编程(十二)——final关键字
2017-07-17 23:07 by GarfieldEr007, 339 阅读, 收藏, 编辑
摘要:
阅读目录 final关键字final修饰变量final修饰方法final修饰类Final && Static 总结 阅读目录 final关键字final修饰变量final修饰方法final修饰类Final && Static 总结 final关键字final修饰变量final修饰方法final修饰类 阅读全文
项目管理利器——Maven阅读目录
2017-07-17 23:06 by GarfieldEr007, 354 阅读, 收藏, 编辑
摘要:
阅读目录 一、Maven介绍及环境搭建 二、构建Maven版的Hello World 三、Maven常见构建命令 四、自动创建目录骨架 五、Maven中的坐标和仓库 六、在eclipse中安装Maven插件以及创建Maven项目 七、Maven的生命周期和插件 阅读目录 一、Maven介绍及环境搭建 阅读全文
深入分析Java的序列化与反序列化
2017-07-17 23:05 by GarfieldEr007, 330 阅读, 收藏, 编辑
摘要:
阅读目录 Java对象的序列化如何对Java对象进行序列化与反序列化序列化及反序列化相关知识ArrayList的序列化ObjectOutputStream总结 阅读目录 Java对象的序列化如何对Java对象进行序列化与反序列化序列化及反序列化相关知识ArrayList的序列化ObjectOutpu 阅读全文
Java提高篇——Java 异常处理
2017-07-17 23:02 by GarfieldEr007, 787 阅读, 收藏, 编辑
摘要:
异常的概念 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。 比如说,你的代码少了一个分号,那么运行出来结果是提示是错误java.lang.Error;如果你用System.out.println(11/0),那么你是因为你用0做了除数,会抛出java.lang.Ar 阅读全文
Java提高篇——单例模式
2017-07-16 23:19 by GarfieldEr007, 444 阅读, 收藏, 编辑
摘要:
阅读目录 介绍实现单例模式的几种实现方式总结 阅读目录 介绍实现单例模式的几种实现方式总结 介绍实现单例模式的几种实现方式总结 介绍 在我们日常的工作中经常需要在应用程序中保持一个唯一的实例,如:IO处理,数据库操作等,由于这些对象都要占用重要的系统资源,所以我们必须限制这些实例的创建或始终使用一个 阅读全文
synchronized同步块和volatile同步变量
2017-07-16 22:48 by GarfieldEr007, 323 阅读, 收藏, 编辑
摘要:
阅读目录 synchronized同步块 volatile同步变量 阅读目录 synchronized同步块 volatile同步变量 Java语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量。这两种机制的提出都是为了实现代码线程的安全性。其中 Volatile 变量的同步性较 阅读全文
深入剖析Java中的装箱和拆箱
2017-07-16 22:47 by GarfieldEr007, 434 阅读, 收藏, 编辑
摘要:
阅读目录 一.什么是装箱?什么是拆箱?二.装箱和拆箱是如何实现的三.面试中相关的问题 阅读目录 一.什么是装箱?什么是拆箱?二.装箱和拆箱是如何实现的三.面试中相关的问题 一.什么是装箱?什么是拆箱?二.装箱和拆箱是如何实现的三.面试中相关的问题 自动装箱和拆箱问题是Java中一个老生常谈的问题了, 阅读全文
Java中Native关键字的作用
2017-07-16 22:46 by GarfieldEr007, 309 阅读, 收藏, 编辑
摘要:
阅读目录 一、认识 native 即 JNI,Java Native Interface 二、用 Java 调用 C 的“Hello,JNI” 三、JNI 调用 C 流程图 四、其他介绍 阅读目录 一、认识 native 即 JNI,Java Native Interface 二、用 Java 调用 阅读全文
Java提高篇——Java实现多重继承
2017-07-16 22:45 by GarfieldEr007, 550 阅读, 收藏, 编辑
摘要:
阅读目录 一、 接口二、内部类 阅读目录 一、 接口二、内部类 一、 接口二、内部类 多重继承指的是一个类可以同时从多于一个的父类那里继承行为和特征,然而我们知道Java为了保证数据安全,它只允许单继承。有些时候我们会认为如果系统中需要使用多重继承往往都是糟糕的设计,这个时候我们往往需要思考的不是怎 阅读全文
Java提高篇——通过分析 JDK 源代码研究 Hash 存储机制
2017-07-16 22:44 by GarfieldEr007, 274 阅读, 收藏, 编辑
摘要:
阅读目录 通过 HashMap、HashSet 的源代码分析其 Hash 存储机制HashMap 的存储实现Hash 算法的性能选项HashMap 的读取实现HashSet 的实现 阅读目录 通过 HashMap、HashSet 的源代码分析其 Hash 存储机制HashMap 的存储实现Hash 阅读全文
Java提高篇——equals()方法和“==”运算符
2017-07-16 17:38 by GarfieldEr007, 342 阅读, 收藏, 编辑
摘要:
阅读目录 equals() equals()方法和“==”运算符比较 阅读目录 equals() equals()方法和“==”运算符比较 回到顶部 equals() 超类Object中有这个equals()方法,该方法主要用于比较两个对象是否相等。该方法的源码如下: 我们知道所有的对象都拥有标识( 阅读全文
Java提高篇——equals()与hashCode()方法详解
2017-07-16 17:38 by GarfieldEr007, 262 阅读, 收藏, 编辑
摘要:
阅读目录 equals()方法详解 hashcode() 方法详解 Hashset、Hashmap、Hashtable与hashcode()和equals()的密切关系 阅读目录 equals()方法详解 hashcode() 方法详解 Hashset、Hashmap、Hashtable与hashc 阅读全文
Java提高篇—— 简单介绍Java 的内存泄漏
2017-07-16 17:37 by GarfieldEr007, 340 阅读, 收藏, 编辑
摘要:
阅读目录 什么是内存泄漏? 为什么会发生内存泄漏? 如何预防内存泄漏? 阅读目录 什么是内存泄漏? 为什么会发生内存泄漏? 如何预防内存泄漏? java最明显的一个优势就是它的内存管理机制。你只需简单创建对象,java的垃圾回收机制负责分配和释放内存。然而情况并不像想像的那么简单,因为在Java应用 阅读全文
Java提高篇——理解String 及 String.intern() 在实际中的应用
2017-07-16 17:36 by GarfieldEr007, 389 阅读, 收藏, 编辑
摘要:
1. 首先String不属于8种基本数据类型,String是一个对象。 因为对象的默认值是null,所以String的默认值也是null;但它又是一种特殊的对象,有其它对象没有的一些特性。 2. new String()和new String(“”)都是申明一个新的空字符串,是空串不是null; 3 阅读全文
Java提高篇——JVM加载class文件的原理机制
2017-07-16 17:35 by GarfieldEr007, 315 阅读, 收藏, 编辑
摘要:
阅读目录 1、JVM 简介2、JVM 的组成部分3、JVM加载class文件的原理机制 阅读目录 1、JVM 简介2、JVM 的组成部分3、JVM加载class文件的原理机制 1、JVM 简介2、JVM 的组成部分3、JVM加载class文件的原理机制 在面试java工程师的时候,这道题经常被问到, 阅读全文
Java提高篇——对象克隆(复制)
2017-07-16 17:34 by GarfieldEr007, 3049 阅读, 收藏, 编辑
摘要:
阅读目录 为什么要克隆?如何实现克隆浅克隆和深克隆解决多层克隆问题总结 阅读目录 为什么要克隆?如何实现克隆浅克隆和深克隆解决多层克隆问题总结 为什么要克隆?如何实现克隆浅克隆和深克隆解决多层克隆问题总结 假如说你想复制一个简单变量。很简单: 不仅仅是int类型,其它七种原始数据类型(boolean 阅读全文
UML用例图
2017-07-16 17:28 by GarfieldEr007, 373 阅读, 收藏, 编辑
摘要:
用例图主要用来图示化系统的主事件流程,它主要用来描述客户的需求,即用户希望系统具备的完成一定功能的动作,通俗地理解用例就是软件的功能模块,所以是设计系统分析阶段的起点,设计人员根据客户的需求来创建和解释用例图,用来描述软件应具备哪些功能模块以及这些模块之间的调用关系,用例图包含了用例和参与者,用例之 阅读全文
java中静态代码块的用法 static用法详解
2017-07-16 17:26 by GarfieldEr007, 5079 阅读, 收藏, 编辑
摘要:
(一)java 静态代码块 静态方法区别一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序来调用的时候,需要使用静态方法,这种代码是被动执行的. 静态方法在类加载的时候 就已经加载 可以用类 阅读全文
Java提高篇——静态代码块、构造代码块、构造函数以及Java类初始化顺序
2017-07-16 13:17 by GarfieldEr007, 501 阅读, 收藏, 编辑
摘要:
阅读目录 构造函数构造代码块静态代码块Java类初始化顺序 阅读目录 构造函数构造代码块静态代码块Java类初始化顺序 构造函数构造代码块静态代码块Java类初始化顺序 静态代码块:用staitc声明,jvm加载类时执行,仅执行一次构造代码块:类中直接用{}定义,每一次创建对象时执行。执行顺序优先级 阅读全文
如何高效的学习掌握新技术
2017-07-10 00:25 by GarfieldEr007, 596 阅读, 收藏, 编辑
摘要:
作者:宝玉链接:https://zhuanlan.zhihu.com/p/20190356来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 最近一段时间,把React学习实践了一把,算是又多掌握了一门新技术,虽然学习过程比较辛苦曲折,但熟练掌握后感觉还是很好的,以后又多 阅读全文
如何快速掌握一门技术
2017-07-10 00:24 by GarfieldEr007, 215 阅读, 收藏, 编辑
摘要:
作者:陈天链接:https://zhuanlan.zhihu.com/p/19854703来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 几周前一个朋友也打算通过跑步来甩一甩脂肪,控制一下自己那已经严重扭曲了的身材 —— 他便求教我从衣服到鞋,从腕表到心率带,都买了什 阅读全文
十步完全理解 SQL
2017-07-09 21:46 by GarfieldEr007, 489 阅读, 收藏, 编辑
摘要:
很多程序员视 SQL 为洪水猛兽。SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言、面向对象的程序语言、甚至是函数语言(尽管有些人认为 SQL 语言也是一种函数式语言)。 我们每天都在写 SQL 并且应用在开源软件 jOOQ 中。于是我想把 SQL 之美介绍给那些仍然 阅读全文
Hadoop Hive基础sql语法
2017-07-07 22:42 by GarfieldEr007, 1585 阅读, 收藏, 编辑
摘要:
Hive 是基于Hadoop 构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行,通过自己的SQL 去查询分析需要的内容, 阅读全文
Hadoop Hive sql 语法详解
2017-07-07 22:41 by GarfieldEr007, 37301 阅读, 收藏, 编辑
摘要:
Hive 是基于Hadoop 构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行,通过自己的SQL 去查询分析需要的内容, 阅读全文
Hive SQL的编译过程
2017-07-07 22:40 by GarfieldEr007, 953 阅读, 收藏, 编辑
摘要:
Hive是基于Hadoop的一个数据仓库系统,在各大公司都有广泛的应用。美团数据仓库也是基于Hive搭建,每天执行近万次的Hive ETL计算流程,负责每天数百GB的数据存储和分析。Hive的稳定性和性能对我们的数据分析非常关键。 在几次升级Hive的过程中,我们遇到了一些大大小小的问题。通过向社区 阅读全文
hive参数——深入浅出学Hive
2017-07-07 22:38 by GarfieldEr007, 340 阅读, 收藏, 编辑
摘要:
第一部分:Hive 参数 hive.exec.max.created.files •说明:所有hive运行的map与reduce任务可以产生的文件的和 •默认值:100000 hive.exec.max.created.files •说明:所有hive运行的map与reduce任务可以产生的文件的和 阅读全文
Hive JDBC——深入浅出学Hive
2017-07-07 22:37 by GarfieldEr007, 306 阅读, 收藏, 编辑
摘要:
第一部分:搭建Hive JDBC开发环境 搭建:Steps •新建工程hiveTest •导入Hive依赖的包 •Hive 命令行启动Thrift服务 •hive --service hiveserver & 第二部分:基本操作对象的介绍 Connection •说明:与Hive连接的Connect 阅读全文
Hive 内建操作符与函数开发——深入浅出学Hive
2017-07-07 22:36 by GarfieldEr007, 588 阅读, 收藏, 编辑
摘要:
第一部分:关系运算 Hive支持的关系运算符 Hive支持的关系运算符 •常见的关系运算符 •等值比较: = •不等值比较: <> •小于比较: < •小于等于比较: <= •大于比较: > •大于等于比较: >= •空值判断: IS NULL •非空判断: IS NOT NULL •LIKE比较: 阅读全文
Hive安装与配置——深入浅出学Hive
2017-07-07 22:35 by GarfieldEr007, 278 阅读, 收藏, 编辑
摘要:
第一部分:软件准备与环境规划 Hadoop环境介绍 •Hadoop安装路径 •/home/test/Desktop/hadoop-1.0.0/ •Hadoop 元数据存放目录 •/home/test/data/core/namenode •Hadoop 数据存放路径 •/home/test/data 阅读全文
Hive QL——深入浅出学Hive
2017-07-07 22:33 by GarfieldEr007, 395 阅读, 收藏, 编辑
摘要:
第一部分:DDL DDL DDL •建表 •删除表 •修改表结构 •创建/删除视图 •创建数据库 •显示命令 建表 CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment 阅读全文
ConcurrentHashMap源码剖析
2017-07-07 22:13 by GarfieldEr007, 179 阅读, 收藏, 编辑
摘要:
原文出处: 我爱物联网 ConcurrentHashMap是Java5中新增加的一个线程安全的Map集合,可以用来替代HashTable。对于ConcurrentHashMap是如何提高其效率的,可能大多人只是知道它使用了多个锁代替HashTable中的单个锁,也就是锁分离技术(Lock Strip 阅读全文
ConcurrentHashMap总结
2017-07-07 22:12 by GarfieldEr007, 2441 阅读, 收藏, 编辑
摘要:
原文出处: Hosee 并发编程实践中,ConcurrentHashMap是一个经常被使用的数据结构,相比于Hashtable以及Collections.synchronizedMap(),ConcurrentHashMap在线程安全的基础上提供了更好的写并发能力,但同时降低了对读一致性的要求(这点 阅读全文
探索 ConcurrentHashMap 高并发性的实现机制
2017-07-07 22:11 by GarfieldEr007, 223 阅读, 收藏, 编辑
摘要:
简介 ConcurrentHashMap 是 util.concurrent 包的重要成员。本文将结合 Java 内存模型,分析 JDK 源代码,探索 ConcurrentHashMap 高并发的具体实现机制。 由于 ConcurrentHashMap 的源代码实现依赖于 Java 内存模型,所以阅 阅读全文
Java并发编程:并发容器之ConcurrentHashMap
2017-07-07 22:10 by GarfieldEr007, 218 阅读, 收藏, 编辑
摘要:
下面这部分内容转载自: http://www.haogongju.net/art/2350374 JDK5中添加了新的concurrent包,相对同步容器而言,并发容器通过一些机制改进了并发性能。因为同步容器将所有对容器状态的访问都 串行化了,这样保证了线程的安全性,所以这种方法的代价就是严重降低了 阅读全文
ConcurrentHashMap 的实现原理
2017-07-07 22:09 by GarfieldEr007, 356 阅读, 收藏, 编辑
摘要:
概述 我们在之前的博文中了解到关于 HashMap 和 Hashtable 这两种集合。其中 HashMap 是非线程安全的,当我们只有一个线程在使用 HashMap 的时候,自然不会有问题,但如果涉及到多个线程,并且有读有写的过程中,HashMap 就不能满足我们的需要了(fail-fast)。在 阅读全文
聊聊并发(四)——深入分析ConcurrentHashMap
2017-07-07 22:08 by GarfieldEr007, 211 阅读, 收藏, 编辑
摘要:
线程不安全的HashMap 因为多线程环境下,使用HashMap进行put操作会引起死循环,导致CPU利用率接近100%,所以在并发情况下不能使用HashMap,如以下代码 效率低下的HashTable容器 HashTable容器使用synchronized来保证线程安全,但在线程竞争激烈的情况下H 阅读全文
Mybatis 动态 SQL
2017-07-02 23:12 by GarfieldEr007, 285 阅读, 收藏, 编辑
摘要:
动态 SQL MyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么痛苦。拼接的时候要确保不能忘了必要的空格,还要注意省掉列名列表最后的逗号。利用动态 SQL 这一特性可以彻底摆脱这种痛苦。 通常使用动态 S 阅读全文
Mybatis Mapper XML 文件
2017-07-02 23:11 by GarfieldEr007, 1005 阅读, 收藏, 编辑
摘要:
Mapper XML 文件 MyBatis 的真正强大在于它的映射语句,也是它的魔力所在。由于它的异常强大,映射器的 XML 文件就显得相对简单。如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% 的代码。MyBatis 就是针对 SQL 构建的,并且比普通的方法做的更 阅读全文
MySQL的语句执行顺序
2017-07-02 23:10 by GarfieldEr007, 214 阅读, 收藏, 编辑
摘要:
MySQL的语句执行顺序 MySQL的语句一共分为11步,如下图所标注的那样,最先执行的总是FROM操作,最后执行的是LIMIT操作。其中每一个操作都会产生一张虚拟的表,这个虚拟的表作为一个处理的输入,只是这些虚拟的表对用户来说是透明的,但是只有最后一个虚拟的表才会被作为结果返回。如果没有在语句中指 阅读全文