Tang Blog

一生想做浪漫极客

使用copy命令的二进制形式向PostgreSQL/Greenplum数据库批量导入数据|Greenplum

这篇文章主要介绍使用copy命令的二进制形式向PostgreSQL/Greenplum数据库批量导入数据。 本文分为以下几个部分: copy命令语法 copy命令的二进制格式 COPY的二进制导入数据开发 使用copy命令的二进制形式向PostgreSQL/Greenplum数据库批量导入数据 Greenplum是面向数据仓库应用的关系型数据库,基于PostgreSQL开...

Java的动态代理及其实现原理|Java编程

这篇文章主要介绍Java的动态代理及其实现原理。 本文分为以下几个部分: JDK的动态代理 CGlib的动态代理 JAVAssist的动态代理 Java动态代理实现的原理 Java的动态代理及其实现原理 一、Java的动态代理 1、JDK的动态代理 JDK提供的动态代理功能只能针对(一个或多个)接口提供代理。使用步骤如下: (1) 新建一个接口 pub...

Janino框架初识与使用教程|Java编程

这篇文章主要介绍Janino框架初识与使用教程。 本文分为以下几个部分: Janino简介 Janino的应用 Janino的使用教程 Janino框架初识与使用教程 一、 Janino简介 Janino 是一个极小、极快的 开源Java 编译器(Janino is a super-small, super-fast Java™ compiler.)。Janino 不仅...

一个通用的网站新闻页正文抽取组件:| libariry

这篇文章主要介绍了一个通用的网站新闻页正文抽取组件libnpce库。 一、libnpce组件简介 新闻文章正文抽取News Passage Content Extractor (NPCE),是为抽取HTML中的新闻文章正文而设计的。 可用libnpce组件抽取新闻页面的如下字段信息: (1)标题 (2)发布时间 (3)来源及其URL链接地址 (4)正文文本内容 (5)正文图片...

接口设计中的幂等性与实现方法:| java

这篇文章主要介绍了接口设计中的幂等性与实现方法。 一.幂等性的概念 幂等这个词原自数学,某一元运算为幂等时,其作用在任一元素两次后会和其作用一次的结果相同。 在编程中,一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。第一次请求的时候对资源产生了副作用,但是以后的多次请求都不会再对资源产生副作用。这里的副作用是不会对结果产生破坏或者产生不可预料的结果。 比如...

通过javap命令分析java汇编指令:| java

这篇文章主要介绍了javap和jclasslib工具的使用。 本文分为以下几个部分: 通过javap命令分析java汇编指令 JClassLib工具 1.反解析简介 javap是jdk自带的反解析工具。它的作用就是根据class字节码文件,反解析出当前类对应的code区(汇编指令)、本地变量表、异常表和代码行偏移量映射表、常量池等等信息。 当然这些信息中,有些信息(如本地变...

Java的多线程编程与线程同步:| java

这篇文章主要介绍了Java的多线程编程与线程同步。 本文分为以下几个部分: Java的多线程创建 Java的线程池使用 Java的线程同步方法 Java的线程间通信 1.Java的多线程编程 一个程序就是一个进程,而一个程序中的多个任务则被称为线程。 进程是表示资源分配的基本单位,线程是进程中执行运算的最小单位,亦是调度运行的基本单位。 在Java的JDK开发包中...

jvm的内存结构:| java

这篇文章主要介绍了jvm的内存结构与垃圾回收。 本文分为以下几个部分: jvm的内存结构 java堆的垃圾回收 1.jvm的内存结构 jvm的内存结构如图所示: 1.1.程序计数器 程序计数器是一块较小的内存空间,它可以看做是当前线程执行的字节码写的行号指示器。他是线程私有的,按照我的理解就是,它相当于马路上的路标,当程序执行的时候,他会获取相应的指令,让代码运行下去...

基于同一张表前后两次的全量数据计算变化量:| 算法

这篇文章主要介绍了基于同一张表前后两次的全量数据计算变化量的方法。 一、说在前面的话 一些涉及数据分析处理的系统,常常需要将先将业务系统中关系数据库内的数据(离线)抽取到自己的数据库中(当前比较流行的开源MPP数据库如Greenplum)以便进行后续处理,鉴于每次进行全量数据抽取,全量分析处理代价较大,需要计算同一张表前后两次的全量数据计算变化量,这种变化量数据包括insert、updat...

JAVA中JDBC的事务编程:| java

这篇文章主要介绍了JDBC的事务编程相关。 本文分为以下几个部分: JDBC中的事务编程 Spring中的事务编程 1.JDBC中的事务编程 1.1 自动提交 事务处理一定程度上和数据库实现相关,数据库有个auto-commit属性,一般而言,MySQL默认开启,Oracle默认关闭,另外auto-commit属性分为全局和会话级别,全局级别影响的是所有会话,单个会话级别只...