自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

原创 git 常用命令总结

在工作的时候经常有一些git命令很模糊,今天就总结一下常用的git命令git status 查看工作空间的状态git branch 查看分支情况git branch new_branch 创建一个新的分支new_branchgit checkout xxx 切换到xxx分支git pull 从线上拉取代码git merge master 将master分支代码保持一致g...

2020-02-26 17:00:54 172

原创 SparkSubmit报错:Error: Cannot load main class from JAR file:/xxx

在测试scala写的任务的时候,将jar包上传的集群上,通过sparkSubmit的方式提交任务,出现Cannot load main class from JAR file的错误。重新上传jar包之后还是报错,仔细看了一下执行的脚本,报错脚本如下:#! /bin/bashspark-submit \--cluster xxxx-spark2.1 \--conf spark.disabl...

2020-02-26 16:28:40 11659 3

原创 spark sql底层join实现,broadcast hash join,shuffle hash join,sort merge join

broadcast hash join:是将其中一张小表广播分发到另一张大表所在的分区节点上,分别并发地与其上的分区记录进行hash join。broadcast适用于小表很小,可以直接广播的场景。在执行上,主要可以分为以下两步:broadcast阶段:将小表广播分发到大表所在的所有主机。分发方式可以有driver分发,或者采用p2p方式。hash join阶段:在每个executo...

2020-02-24 11:24:09 1268

原创 hdfs通过垃圾箱恢复被删除的文件

假如在操作过程中,误删hdfs文件,不要紧,hdfs提供了垃圾箱恢复文件的功能。hdfs --cluster zjyprc-hadoop dfs -rm -r hdfs://zjyprc-hadoop/user/s_xdata/kuduhive_warehouse/ods_chain_active/date=20191123将date=20191123文件夹误删,恢复流程如下:1.执行上述...

2019-11-29 12:58:38 896

原创 scp传输文件时出错ssh: connect to host xxx port 22: Connection refused

进行scp文件传输时报错ssh: connect to host xxx port 22:Connection refusedlost connection解决方案:sudo apt-get install ssh openssh-server需要安装服务模块 openssh-serve,没有在本机建立ssh服务。...

2019-11-18 20:01:51 3714

原创 scp服务器与本地传输文件

首先,要记住 scp [from] [to][from]是所要传输的文件位置,可以是服务器端地址,也可以是本地机器地址[to]是将文件传输到的位置,服务器和本地都可以除了服务器和本地外,还可以和第三方传输文件例如:假设远程服务器的ip为:192.168.1.11.从服务器复制文件到本地scp [email protected]:/data/test.txt /home/file2...

2019-11-18 19:55:42 851

原创 linux环境下安装jdk及出现的问题与分析

首先下载jdk,我的是下载到Downloads文件夹下。然后进行解压tar -xzvf OpenJDK8U-jdk_x64_linux_hotspot_8u202b08.tar.gz 将解压后的文件复制到/usr/local/java文件夹下,这时出现了问题显示没有权限创建文件夹,可以用命令sudo mkdir /usr/local/java来执行,就可以创建文件夹了。我使用的是将...

2019-11-13 09:26:03 347

原创 SpringMVC操作流程

近期面试,准备一下。操作流程图:1.用户发送请求到前端控制器(DispatcherServlet);2.前端控制器请求HandlerMapping查找Handler可以根据xml配置、注解进行查找;3.处理器映射器HandlerMapping向前端控制器返回Handler;4.前端控制器调用处理器适配器去执行Handler;5.处理器适配器去执行Handler;6.Handler执行...

2019-10-15 20:16:30 115

原创 二分查找

面试过程中用递归方式实现二分查找,在这里总结一下://递归方式实现public static int tSearch(int[] arr,int desc,int start,int end){ while(start<=end){ int middle = (start+end)/2; if(arr[middle]==desc){ return middle;...

2019-10-13 10:28:01 85

原创 equals和==的区别

在面试过程中遇到过这个问题,故在这儿总结一下:==:比较的是变量(栈)内存中存放的对象的(堆)内存地址,用来判断两个对象的地址是否相同,即是否是指向同一个对象。比较的是真正意义上的指针操作。1.比较的是操作符两端的操作数是否是同一个对象;2.两边的操作数必须是同一类型的才能编译通过;3.比较的是地址,如果是具体的数字比较,值相等则为true。equals:用来比较的是两个对象的内容是否...

2019-10-12 18:58:44 80

原创 java多线程之synchronized与lock的异同

相同点都是解决线程同步问题,通过加锁来解决。差异点synchronized是系统关键字实现,系统级别实现属于重量级实现,在竞争压力不大的情况下,效率较高。lock是程序设计的实现,属于应用级别也就是轻量级实现,在竞争压力大的情况下,效果更优。...

2019-10-09 17:19:36 90

原创 scala解決包冲突的方法

在完成项目时,需要将scala打包。打包过程中,出现了以下问题:显示C:\Users\lenovo.ivy2\cache\org.apache.spark\spark-streaming-kafka_2.10\jars\spark-streaming-kafka_2.10-1.6.2.jar:org/apache/spark/unused/UnusedStubClass.class与C:\U...

2019-09-28 16:55:23 474

原创 linux中合并多个文件到一个文件中

linux合并多个文件data目录下有四个文件,想要将四个文件合并到以个文件中,代码如下:cat * > download文件本身有顺序,顾此时download文件中的内容也是有序的如果想按特殊的顺序,可以执行以下代码,顺序自己定义:cat 000000_3 000000_2 000000_1 000000_0 >download结果如下:合并成功!!!...

2019-09-22 19:04:26 14287

原创 SparkSQL多数据集抽象类型对比分析

spark抽象数据列表RDDDataFrameDataSet相同点:全都是spark平台下的分布式弹性数据集,为处理超大型数据提供便利三者都是惰性机制,在执行Transform操作时不会立即执行,在遇到action操作时会正式提交作业运行均采用spark的内存运算和优化策略,内存使用和执行效率均得到保障均有partition的概念,便于分布式计算处理,达...

2019-09-18 18:03:52 188

原创 Hive内表和外表的区别

有external修饰的是外表,没有external修饰的是内表内表数据由Hive自身管理,外表数据由HDFS管理删除内表时会直接删除元数据和存储数据,删除外表时只删除元数据,HDFS上的文件不会删除。...

2019-09-17 20:49:44 994

原创 快速排序总结

基本思想通过一趟排序,将数据分割成独立的两个部分,其中一部分的数据要比另一部分的数据都要小,然后在按此方法将这两部分的数据分别进行快速排序。排序流程首先设定一个分界值,通过该分界值将数据分成两个部分;将大于或等于该临界值的数据都放到数组右边,小于分界值的数据放到数组的左边;然后左边和右边的数据可以独立排序,重复上述步骤直到排序结束。代码实现public class Q...

2019-09-12 15:40:58 90

原创 JDBC连接数据库的操作步骤

创建一个以JDBC连接数据库的程序,包含7个步骤1.JDBC所需的四个参数(user,password,url,driverClass)spring.datasource.url=jdbc:mysql://localhost:3306/t1spring.datasource.username=rootspring.datasource.password=rootspring.data...

2019-09-11 21:02:04 201

原创 java多线程总结

首先先了解一下进程和线程的区别根本区别:进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位所处环境:在操作系统中能同时运行多个进程(程序),而在同一个进程(程序)中有多个线程同时执行(通过CPU调度,在每个时间片中只有一个线程执行);内存分配方面:系统在运行的时候会为每个进程分配不同的内存空间;而对线程而言,除了CPU外,系统不会为线程分配内存(线程所使用的资源来自其所属...

2019-09-11 20:33:54 66

原创 常见的编译时异常和运行时异常

异常:程序当中出乎意料的执行状况异常和错误的区别:1.异常是可以捕捉的,错误捕捉不了。2.异常时继承的java.long.Expection,错误是继承的java.long.Error两者均是继承java.long.Throwable常见的错误:一般是硬件导致的严重问题为错误,如内存溢出、磁盘写满、驱动器坏掉等等编译时异常:编译时必须捕捉或抛出处理的异常,比如IOExpection,其显著...

2019-09-02 18:46:09 808

原创 return和finally的执行顺序

return执行时,先会将后面的表达是的值,置于返回栈的顶部(此为方法的最终返回值),然后去执行finally的代码return的最后返回值取决于return后面的表达式的值此处共涉及三个操作:序号1是return最终的返回操作、序号2是return后面的表达式、序号3是finally的执行,其执行顺序为:序号2>序号1>序号3示例public class Test01 {...

2019-09-02 18:26:15 375

原创 final,fianlly,finalize的区别

final:是修饰符,修饰的类、变量或方法不能够改变或继承finally: 捕获异常时,不管有无异常,都会被执行finalize:用在垃圾回收的时候,相当于手动标识回收...

2019-09-02 17:24:57 99

原创 斐波那契数列实现

斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144,…这个数列从第3项开始,每一项都等于前两项之和。具体代码实现public static int fiber(int location){ if(location<1){ return -1; } if(location ==1 || location =...

2019-09-02 17:20:23 128

原创 java多态剖析

多态一个事物的多种不同的表示方式,比如:狗都会叫,狼青、黑被、金毛等叫的都不一样多态的必备的表现形式(必须有继承,必须有重写,必须是父类的引用指向子类的对象)示例public class Dog { public void wow(){ System.out.println("一般狗的叫"); }}public class Dog01 extends Dog { @Ov...

2019-09-02 17:09:10 67

原创 override和overwrite的区别

override(重载)是发生在类内,名称必须相同,参数不一样,返回值没有区分性overwrite(重写)是发生在类间,必须有继承,方法名相同、参数名相同、顺序、类型必须相同,返回值也相同(抛出异常可以相同,如果不同的话,子类抛出的异常一定是小于或等于父类的异常等级)...

2019-09-02 16:56:42 5333 1

原创 JDK和JRE的区别

jdk和jre的区别jdk就是java的开发工具集,顾名思义就是你做开发用的,其中包括javac,也就是java compiler等。jre(java runtime environment),就是java程序的运行环境。你所写的java程序在经过javac编译后会形成字符行文件,这个java的中间文件,计算机是看不懂的,而这个文件是给jvm(java的虚拟机)用的,由jvm进行解释后...

2019-09-02 16:48:54 91

原创 path和classpath的作用与配置

JAVA_HOME:指定JDK的安装路径,作为全局变量用作后面配置的变量。Path:windows系统根据path环境变量来查找命令。path环境的值是一系列路径,如果能通过path找到这个命令,则该命令是可执行的。否则报"xxx 命令不是内部或外部命令, 也不是可运行的执行程序或批处理文件"%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;classpath:指定了运行...

2019-09-02 16:43:18 233

原创 List转JSONArray和JSONArray转List

1.List转JSONArrayList<T> list = new ArrayList<T>();JSONArray array= JSONArray.parseArray(JSON.toJSONString(list));2.JSONArray转ListJSONArray array = new JSONArray();List<EventColAtt...

2019-08-19 20:59:33 153021 11

原创 shell xargs用法解析

使用xargs命令可以在使用管道符时传递参数简介xargs 可以读入 stdin 的资料,并且以空白字元或断行字元作为分辨,将 stdin 的资料分隔成为 arguments 。 因为是以空白字元作为分隔,所以,如果有一些档名或者是其他意义的名词内含有空白字元的时候, xargs 可能就会误判了,如果需要处理特殊字符,需要使用-0参数进行处理。0 :当sdtin含有特殊字元时候,将其当成一...

2019-08-17 20:40:06 153

原创 shell for循环

1、字符串for循环#! /bin/bashfor i in name phone address;do echo word is :$i;donedo 和 done 之间的是循环体2、路径查找for循环#! /bin/bashfor file in $(ls);do echo "file: $file";done...

2019-08-17 20:17:49 62

原创 shell 取出当前目录下的最大、最小文件

查看整个文件的大小: du -sh 返回值带有单位 du -s 返回值为字节数 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190817193819976.png)将整个目录下所有文件显示出来du -sh *-给文件排序du -sh * |sort -nsort -n 根据文件大小排序-n, --numeric-sort ...

2019-08-17 19:56:24 1883

原创 shell $0,$1,$2,$*,$?剖析

$0 :脚本文件本身的名称$1:执行脚本传的第一个参数,$2第二个参数…$*:所有参数列表$?:始终代表当前会话当中的上一句代码的执行状态$?为0时,代表正常,非0时均不正常0:正常1:file not found126:permission found127:command not found...

2019-08-17 19:28:53 359

原创 java排序总结

冒泡排序基本思想:两个数比较,大的下沉,小的冒上来。过程:比较两个数,如果第二个数小就交换位置。每遍历一次就找的一个最大值放在最后。public static int[] budleSort(int[] arr){ int temp; for (int i = 0; i < arr.length-1; i++) { for (int j =0; j<arr.length...

2019-08-04 17:04:05 67

原创 java 创建数组的几种方式

数组的声明与创建以int类型为例,声明并创建一维数组声明整型数组:int [ ] arr 或 int arr [ ];创建数组: 如果在创建数组的同时不初始化数据则必须指定其大小 arr = new int [3]; 如果在创建数组的同时不指定其大小则必须初始化数组 arr = new int [ ]{ 1,2,3 };数组定义之后,长度不可改变 内容也不可以更改。...

2019-08-04 15:06:14 2406

原创 java控制台输入

java控制台输入格式一: Scanner sc = new Scanner (new BufferedInputStream(System.in));格式二: Scanner sc= new Scanner (System.in);读入一个字符串:String str= sc.next();读入一整行数据:String line=sc.nextline();读入一个整数: Int v...

2019-08-04 14:41:05 199

原创 执行shell脚本的四种方法

执行shell脚本的四种方法分析使用sh来执行shell脚本在shell文件所在目录执行 sh test.sh相对路径下执行shell脚本./ test.sh绝对路径下执行shell脚本,从根目录开始到shell脚本文件所在目录地址/home/test/test.shsource 命令执行shell脚本source test.sh 或是 . test.sh都...

2019-08-02 20:25:11 791

空空如也

空空如也

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

TA关注的人

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