自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

要成为架构师的男人

要成为架构师的男人

  • 博客(42)
  • 资源 (3)
  • 收藏
  • 关注

原创 修复flink-jdbc含有schema的表报不存在

博客背景​ 最近,使用flink读取postgresql的表数据时,代码一直报错,提示表不存在。通过debug发现,flink-jdbc的JDBCDialect类存在一点问题,现记录如下。环境说明flink版本:1.9.1scala版本:2.12postgresql数据库表结构:ipark_datacenter:​ – ods​ – t_test(id, name)测试代码import org.apache.flink.api.common.typeinfo.BasicT

2020-07-17 10:27:57 1247

原创 hbase api常用操作

环境信息hbase版本:hbase-2.2.4-bin.tar.gzapi版本 : <dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-client</artifactId> <version>2.2.4</version> &l

2020-05-28 16:17:29 250

原创 lambda表达式的4种基础类型

import java.util.Date;;import java.util.function.Consumer;import java.util.function.Function;import java.util.function.Predicate;import java.util.function.Supplier;import java.util.regex.Pattern;/** * Predicate: 测试一个传入的参数是否符合要求 * Consumer: 消费传入的参.

2020-05-27 13:46:19 1051

原创 字符编码utf-8发展史

我们知道,计算机只能数字,如果要处理文本,就必须先把文本转换为数字才行。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295。由于计算机是美国人发明的,因此,...

2020-01-06 11:17:16 512

转载 分布式之elk日志架构的演进

引言好久没写分布式系列的文章了,最近刚好有个朋友给我留言,想看这方面的知识。其实这方面的知识,网上各种技术峰会的资料一抓一大把。博主也是凑合着写写。感觉自己也写不出什么新意,大家也凑合看看。日志系统的必要性?我15年实习的时候那会,给某国企做开发。不怕大家笑话,生产上就两台机器。那会定位生产问题,就是连上一台机器,然后用使用grep / sed / awk等 Linux 脚本工具去...

2019-11-13 10:41:06 117

转载 带你弄清混乱的JAVA日志体系

引言还在为弄不清commons-logging-xx.jar、log4j-xx.jar、sl4j-api-xx.jar等日志框架之间复杂的关系而感到烦恼吗?还在为如何统一系统的日志输出而感到不知所措嘛?您是否依然存在这样的烦恼。比如,要更改spring的日志输出为log4j 2,却不知该引哪些jar包,只知道去百度一下所谓的博客,照着人家复制,却无法弄懂其中的原理?不要急,不要方!本文带...

2019-11-13 10:14:13 109

原创 JWT是什么

JWT是什么JSON Web Token (JWT)是一个开放标准(RFC 7519),它定义了一种紧凑的、自包含的方式,用于作为JSON对象在各方之间安全地传输信息。该信息可以被验证和信任,因为它是数字签名的。JSON Web Token的结构JSON Web Token由三部分组成,它们之间用圆点(.)连接。这三部分分别是:Header Payload Signa...

2019-11-01 20:00:29 922 1

原创 @JsonFormat、@JSONField、@DateTimeFormat的使用以及其区别

1、JsonFormat来源于jackson,Jackson是一个简单基于Java应用库,Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象。Jackson所依赖的jar包较少,简单易用并且性能也要相对高些,并且Jackson社区相对比较活跃,更新速度也比较快。2、JSONField来源于fastjson,是阿里巴巴的开源框架,...

2019-11-01 19:50:14 481

转载 深入理解 MySQL 底层实现

MySQL架构1)连接层最上层的连接池是一些连接服务,包含本地sock通信和大多数基于C/S工具实现的类似于TCP/IP的通信。主要完成一些类似于连接处理、授权认证及相关的安全方案。在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程。同样在该层上可以实现基于SSL的安全连接。服务器也会为安全接入的每个客户端验证它所具有的操作权限。2)服务层第二层...

2019-10-17 11:06:54 457

转载 MySQL的四种事务隔离级别

一、事务的基本要素(ACID)  1、原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。事务执行过程中出错,会回滚到事务开始前的状态,所有的操作就像没有发生一样。也就是说事务是一个不可分割的整体,就像化学中学过的原子,是物质构成的基本单位。  2、一致性(Consistency):事务开始前和结束后,数据库的完整性约束没有被破坏 。比如A...

2019-10-17 11:00:11 1843 1

原创 maven下载jar包遇到的坑

今天,编译griffin源码,死活不成功,报Java类找不到。第一猜想,有jar包下载失败。神奇的是,通过idea的maven管理工具发现,并没有报jar下载失败:感觉这有点很莫名其妙。进到maven本地仓库,发现kafka-schema-registry-client好好的在仓库里:不信邪的我,准备把jar文件解压,找找对应的类文件是否存在。可是,奇怪的事又出现了:...

2019-09-06 16:43:06 3216 1

原创 yarn资源分配流程

(1) client向RM提交应用程序,其中包括启动该应用的ApplicationMaster的必须信息,例如ApplicationMaster程序、启动ApplicationMaster的命令、用户程序等。(2) ResourceManager启动一个container用于运行ApplicationMaster。(3) 启动中的ApplicationMaster向Resourc...

2019-09-06 11:28:02 571

原创 Hive和HBase的区别

Hive和HBase都是Hadoop集群下的工具,Hive是对MapReduce的优化,而HBase则是HDFS数据存储的大管家。1.Hive中的表为纯逻辑表,仅仅对表的元数据进行定义。Hive没有物理存储的功能,它完全依赖HDFS和MapReduce。它可以将结构化的数据文件映射为为一张数据库表,并提供完整的SQL查询功能,并将SQL语句最终转换为MapReduce任务进行运行。HBase表...

2019-09-06 11:24:09 208

原创 azkaban安装

所有版本地址:https://github.com/azkaban/azkaban/releases3.57 版地址:https://github.com/azkaban/azkaban/releases/tag/3.57.0下载地址:https://codeload.github.com/azkaban/azkaban/tar.gz/3.57.0解压缩:tar ...

2019-09-06 11:20:02 106

原创 maven打包插件配置

一、maven打包可执行jar文件,需要引入插件<plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <appendAssemblyId>false</appendAssemblyId> <descriptorRe...

2019-09-06 11:17:48 1758

原创 Java项目生成oracle数据库dump文件(三)

Oracle数据库的备份和恢复可以通过exp/imp命令来实现,exp、imp命令需要安装Oracle客户端才能使用,生成的dump文件是数据库的二进制文件。exp命令的使可以自行百度,我们在该项目的使用如下:exp admin/pwd@//127.0.0.1:1526/d0csmmcy tables=NODE file=./dump_file/NODE_dump_20180...

2019-04-18 10:49:23 1537

原创 Java项目生成oracle数据库dump文件(一)

近期开发的项目是一个基金管理的项目,由于交易数据比较大,为了提高响应速度,在数据访问层增加了缓存机制。但是,随着系统运行了一段时间,由于缓存加载的数据量扩大,系统内存占用越来越高。为了减轻系统压力,需要增加归档功能,即通过归档操作,将数据库里面符合特定条件(如:交易完成)的数据进行清理。但是,由于基金交易数据的特殊性,这些被清理的数据仍需要保存,而且必要的情况下还要支持数据的恢复。...

2019-04-18 10:49:11 2005

原创 Java项目生成oracle数据库dump文件(二)

Oracle数据库客户端有一个sqlplus组件,这个组件能够让我们通过命令行的方式执行一些数据库操作。为了提高dump文件的写入效率,我们尝试使用sqlplus命令来生成dump文件。 sqlplus可以指定运行脚本,例如:sqlplus admin/pwd@//127.0.0.1:1526/orcl@./tmp_sql/NODE_dump_sql_201...

2019-04-18 10:49:02 874

原创 ThreadPoolExecutor线程池管理器

ThreadPoolExecutor是ExecutorService的一个实例,是一个线程池管理器,能够通过调用线程池里面的线程来执行异步任务。ThreadPoolExecutor主要用来解决两个痛点。一,当执行大量异步任务时,线程池能够减少线程创建和切换的开销,提高性能。二,当有过多的异步任务执行时,程序性能可能因为资源瓶颈降低,甚至直接挂掉。而ThreadPoolExecutor提供了一种...

2018-08-13 21:10:06 897

原创 Thread线程对象

线程,是进程下面的一个单位,一个进程可以由很多个线程组成。为了提高CPU的使用率,Java提供了多线程编程。今天,就让我们来学习一下Java里面多线程最基础的一个类Thread。1.线程的状态: NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING、TERMINATED。2.每个Thread都有一个优先级priority,优先级高的线程优先执行。优先级的大小...

2018-08-01 21:27:48 1076

原创 CountDownLatch学习

昨天去阿里面试,关于多线程方面的知识问到了CountDownLatch。由于这个类长时间没使用,导致当时没有回答上来,因此今天在此整理一下CountDownLatch相关的笔记,以做学习。首先,我们看一下jdk关于CountDownLatch这个类的注释:这是一个同步工具,它允许一个或多个线程在其他线程的任务执行完毕前阻塞。一个CountDownLatch对象在初始化的时候会指定一个c...

2018-07-29 21:18:23 123

原创 ETF基金项目总结

ETF基金,又称可交易型上市基金。不同于一般的基金只能申购赎回,ETF基金既可以在一级市场申购赎回,又可以在二级市场进行买卖。ETF基金是被动投资模式,以特定指数(如沪深300指数、标普500指数、纳斯达克100指数、日经225指数等)为标的指数,并以该指数的成份股为投资对象,通过购买该指数的全部或者部分成分股来构建投资组合,以取得与标的指数大致相同的收益率。个人理解,ETF基金的投资其实是有...

2018-07-25 21:26:11 1026

原创 oracle查询数据库表空间使用情况

select upper(f.tablespace_name) "表空间名", d.tot_grootte_mb "表空间大小(m)", d.tot_grootte_mb - f.total_bytes "已使用空间(m)", to_char(round((d.tot_grootte_mb - f.total_bytes) / d.tot_grootte_...

2018-05-18 14:31:21 581

原创 Java动态代理(二)

       在Java动态代理(一),我们了解了代理模式的含义,也用程序演示了静态代理和动态代理的实现。现在,我们就来学习一下java动态代理的源码。代理类的字节码查看       我们知道,jdk动态代理是在程序运行的时候动态生成代理类,那么生成的代理类里面是什么样的了。我们可以通过下面的方式获得生成的代理类的字节码,然后通过反编译查看代理类的内容。package com.code.proxy...

2018-05-04 16:17:39 134

原创 Java动态代理(一)

一、代理的概念 代理(Proxy)是一种设计模式,提供了目标对象另外的访问方式,即通过代理对象访问目标对象。该设计模式,可以在目标对象已实现功能的基础上,增加额外的功能,即扩展目标对象。二、静态代理 静态代理是对目标对象进行封装,对代理类的调用实际上会调用目标类。使用时,需要定义接口或者父类,代理类和目标类需要实现相同的接口或者继承相同的父类。案例: 首先,...

2018-05-04 16:15:14 182

原创 股票交易

2018-04-30 15:16:30 277

原创 股票发行

2018-04-30 10:51:52 170

原创 自律性组织、监管机构

2018-04-30 10:49:16 232

原创 中介机构

2018-04-30 10:47:56 93

原创 证券发行人

2018-04-30 10:46:47 125

原创 中国多层次资本市场

2018-04-30 10:46:14 437

原创 中国的金融体系

2018-04-30 10:42:34 186

原创 全球金融体系

2018-04-30 10:36:00 181

原创 java SPI机制分析

SPI是什么     SPI,全拼Service Provider Interface,可翻译成服务提供者接口。其思想源自服务提供者框架(Service Provider Framework),是一种将服务接口与服务实现分离以达到解耦、提升程序可扩展性的机制。引入服务提供者就是引入了spi接口的实现者,通过本地的注册发现获取到具体的实现类,达到轻松可插拔的目的。SPI具体约定       java...

2018-04-28 12:53:54 146

原创 java调用cmd命令或者shell脚本

       在我们的项目开发中,有时候为了提高性能,需要调用其他的工具来执行任务。举例来说,当数据库数据量增长比较快的时候,我们需要定期dump数据。而对于大数据量的数据的dump来说,dump时间是需要控制在某个量级的。这个时候,我们不能通过java来生成insert语句这种方式来dump数据的,因为它执行效率很低,而且BLOB、CLOB字段没法处理。相信dba都知道,oracle的dump是...

2018-04-27 12:53:16 2362

原创 abstract 抽象类的使用

通过abstract定义的类为抽象类,抽象类具有以下特点:抽象类可以实现接口,但不能继承接口    public abstract class AbstractClass implements Runnable { private Object param; public abstract void test();}抽象类可以被继承 class ExtendsAbstractClass...

2018-04-12 20:50:26 500

原创 多线程面试常考问题

1) 什么是线程?线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。 2) 线程和进程有什么区别?线程是进程的子集,一个进程可以有很多线程,每条线程并行执行不同的任务。不同的进程使用不同的内存空间,而所有的线程...

2018-04-06 15:56:42 125

原创 synchronized和锁(ReentrantLock) 的区别

 一、API层面·        synchronized既可以修饰方法,也可以修饰代码块//synchronized修饰一个方法时,这个方法叫同步方法 public synchronized void test1(){ doSomethingNeedSynchronizing(); } public void test2(){ doSomethingNotNeed...

2018-04-06 10:27:04 288 1

原创 死锁——刀叉问题程序演示

一、死锁的规范定义集合中的每一个进程都在等待只能由本集合中的其他进程才能引发的事件,那么该组进程是死锁的。二、直观的例子 两个人吃饭,都需要刀和叉,但刀叉又只有一套。某时刻,其中一个人拿了刀,另一个拿了叉,而且两人都在等待对方让出自己需要的叉或刀。这种情形下,两个人都只能一直等待下去,这就是发生了死锁。三、程序演示死锁 static void deadLock() { final ...

2018-04-05 14:45:55 366

原创 oracle删除用户下的所有对象

set heading off;set feedback off;spool \kffsfs\MTUser\maozongliang978\Desktop\dropobj.sql;prompt --Drop constraintselect 'alter table '||table_name||' drop constraint '||constraint_name||' ;' fro...

2018-04-05 14:43:21 194

JDBCDialect.java

原生flink_jdbc 解析含有schema的表出错,拿该类替换原有类即可修复。

2020-07-15

apache_solr 教程

apache-solr 5.3 官网教程

2015-11-02

mybatis sample

mybatis 入门级的环境搭建和基本配置。

2015-11-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除