![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
FOX有爱
这个作者很懒,什么都没留下…
展开
-
解决使用maven打jar包缺失依赖包问题
问题描述今日,遇到一个问题,在用IDEA写好Java 代码之后,在IDEA运行没有问题,但是用maven打成jar包再运行的时候,却报缺失依赖包的情况。例如下面情况pom.xml配置<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-in原创 2022-05-14 22:54:20 · 17612 阅读 · 2 评论 -
使用sshxcute来操作ssh端
本文介绍使用sshxcute的JAR包,通过SSH协议在远程Linux/Unix系统上执行命令1、JAR准备下载地址文件分享https://share.weiyun.com/ZGkRvUQ9原创 2021-11-23 10:16:47 · 866 阅读 · 0 评论 -
Java集合
JAVA 集合1.接口继承关系和实现集合类存放于 Java.util 包中,主要有 3 种:set(集)、list(列表包含 Queue)和 map(映射)。1. Collection:Collection 是集合 List、Set、Queue 的最基本的接口。 2. Iterator:迭代器,可以通过迭代器遍历集合中的数据 3. Map:是映射表的基础接口...原创 2021-04-18 21:44:15 · 91 阅读 · 0 评论 -
java Scanner 类使用示例
java Scanner 类使用示例package com.scan;import java.util.Scanner;public class test { public static void main(String[] args) { //创建键盘录入对象 Scanner sc = new Scanner(System.in); //输出提示 System.out.println("请输入一个整数: ");原创 2021-03-06 09:58:58 · 103 阅读 · 0 评论 -
MapReduce多Job串联
多Job串联一个稍复杂点的处理逻辑往往需要多个mapreduce程序串联处理,多job的串联可以借助mapreduce框架的JobControl实现示例代码:ControlledJob cJob1 = new ControlledJob(job1.getConfiguration());ControlledJob cJob2 = new ControlledJob(job2.getConfiguration());ControlledJob cJob3 = new Controlled原创 2021-09-22 22:19:28 · 233 阅读 · 0 评论 -
mapreduce高阶内容(三) 自定义inputFormat
1、需求现在有一些数据,将数据原封不动地输出到两个不同的文件夹当中。2、分析程序的关键点是要在一个mapreduce程序中根据数据输出结果到不同目录,这类灵活的输出需求可以通过自定义outputformat来实现3、实现实现要点:在mapreduce中访问外部资源 自定义outputformat,改写其中的recordwriter,改写具体输出数据的方法write()第一步:自定义一个outputformatpackage cn.laojiajun.myform原创 2021-09-12 07:10:21 · 118 阅读 · 0 评论 -
Java抽象类小记,踩踩多态的坑!
今天学习写MapReduce的时候,遇到下面这样的一个代码:如图所见,context.getInputSplit() 返回的是 InputSplit 类型,而 InputSplit 是父类,FileSplit 是子类,我们知道,Java里,父类不能够强制转换成子类,那为什么这里又可以呢?带着这个疑问,我做了一个小实验,详见下面代码:Father类:public abstract class Father { public void sayFather() {原创 2021-09-06 22:36:14 · 182 阅读 · 1 评论 -
mapreduce高阶内容(二) 自定义inputFormat
1、需求无论hdfs还是mapreduce,对于小文件都有损效率,实践中,又难免面临处理大量小文件的场景,此时,就需要有相应解决方案2、分析小文件的优化无非以下几种方式:在数据采集的时候,就将小文件或小批数据合成大文件再上传HDFS 在业务处理之前,在HDFS上使用mapreduce程序对小文件进行合并 在mapreduce处理时,可采用combineInputFormat提高效率注意:本文介绍的是第二种处理方法!!!!3、实现本文实现的是上述第二种方式程序的核心机制:原创 2021-09-05 22:52:08 · 89 阅读 · 0 评论 -
reduce端Join算法实现以及map端Join算法实现
reduce端Join算法实现需求订单数据表t_order id date pid amount 1001 20150710 P0001 2 1002 20150710 P0001 3 1002 2015071原创 2021-09-05 22:37:59 · 86 阅读 · 0 评论 -
mapreduce高阶内容(一)
1、MapReduce的分区与reduceTask的数量在MapReduce中,通过我们指定分区,会将同一个分区的数据发送到同一个reduce当中进行处理,例如我们为了数据的统计,我们可以把一批类似的数据发送到同一个reduce当中去,在同一个reduce当中统计相同类型的数据,就可以实现类似数据的分区,统计等说白了就是相同类型的数据,送到一起去处理,在reduce当中默认分区只有1个。MapReduce当中的分区类图需求:将以下数据进行分开处理详细数据参见partition.cs.原创 2021-08-17 10:59:26 · 241 阅读 · 0 评论 -
Java编写mapreduce单词统计
使用Java编写mapreduce程序,核心思想是 分治简单来说,mapreduce编程需要经过以下8个步骤map阶段第一步:读取文件,解析成key value 对 k1 v1第二步:指定map逻辑,接收 k1 v1 转换成新的 k2 v2shuffle阶段第三步:分区...原创 2021-08-04 16:34:34 · 411 阅读 · 1 评论 -
使用org.apache.hadoop.hive.ql.tools.LineageInfo 找出sql的血缘关系
最近遇到一个需求需求就是,给你一段sql,然后解析这段sql里面用了哪些表。然后将这些表,跟数据库里面的表做匹配,数据库里面的表,会记录哪些表你有权限查询,哪些表没有权限查询需求重点:找出这段sql中使用了哪些表使用org.apache.hadoop.hive.ql.tools.LineageInfo即可找出sql使用到哪些表mvn依赖配置 <dependencies> <dependency> ...原创 2021-07-18 11:25:00 · 645 阅读 · 0 评论 -
Java代码获取HDFS文件系统操作对象
代码如下package cn.laojiajun.hdfs_project;import org.apache.commons.io.IOUtils;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.FsUrlStreamHandlerFactory;import org.junit.jupiter.api.Test;原创 2021-07-18 09:40:42 · 224 阅读 · 0 评论 -
Maven简单练习
1、安装配置一般情况下,类似IDEA这样的IDE会自带Maven插件,不需要专门安装软件!下面介绍手动安装步骤如下: (1)下载软件包 下载地址: http://maven.apache.org/download.cgi选择下面红框这两个都可以下载之后解压包,得到压缩包然后可以配置环境变量,或者可以不用配置,直接切换到文件夹目录,并进入bin目录,就可以运行了。Linux环境同样道理(两个环境前提都是要配置好java环境变量,否则会报错)...原创 2021-05-14 20:35:57 · 258 阅读 · 0 评论 -
Java异常处理
JAVA 异常分类及处理1、概念如果某个方法不能按照正常的途径完成任务,就可以通过另一种路径退出方法。在这种情况下会抛出一个封装了错误信息的对象。此时,这个方法会立刻退出同时不返回任何值。另外,调用这个方法的其他代码也无法继续执行,异常处理机制会将代码执行交给异常处理器。 2、异常分类Throwable 是 Java 语言中所有错误或异常的超类。下一层分为 Error 和 ExceptionError1. Error 类是指 java 运行时系统的内部错...原创 2021-04-30 10:01:53 · 43 阅读 · 0 评论 -
数据结构(Java版)
1、数据结构的存储方式数据结构的存储方式只有两种:数组(顺序存储)和链表(链式存储)。散列表、栈、队列、堆、树、图等等各种数据结构,其基础存储结构都是从数组或链表实现而来的用数组实现,就要处理扩容缩容的问题;用链表实现,没有这个问题, 但需要更多的内存空间存储节点指针。数组 访问快,修改慢链表 访问慢,修改快数组由于是紧凑连续存储,可以随机访问,通过索引快速找到对应元素,而且相对节约存储空间。但正因为连续存储,内存空间必须一次性分配够,所以说数组...原创 2021-04-14 10:25:10 · 99 阅读 · 0 评论 -
Java练习_连接pgsql数据库
Java练习_连接pgsql数据库package pgsqlDemo;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class pgsqlDemo { public static void main(String[] args) thro原创 2021-04-07 22:39:48 · 261 阅读 · 0 评论 -
Java接口默认方法以及静态方法
这边文章主要是描述视频中没有提及的 Java接口中可以存在默认方法以及静态方法的语法Java 8 新增了接口的默认方法。简单说,默认方法就是接口可以有实现方法,而且不需要实现类去实现其方法。我们只需在方法名前面加个 default 关键字即可实现默认方法。为什么要有这个特性?首先,之前的接口是个双刃剑,好处是面向抽象而不是面向具体编程,缺陷是,当需要修改接口时候,需要修改全部实现该接口的类,目前的 java 8 之前的集合框架没有 foreach 方法,通常能想到的解决办法是..原创 2021-04-01 12:10:01 · 131 阅读 · 0 评论 -
Java多态示例
Java多态的存在有三个前提:1.要有继承关系2.子类要重写父类的方法3.父类引用指向子类对代码例子父类 Fatherpackage com.test2;public class Father { Integer age = 40; String name = "爸爸"; public void show() { System.out.println("我是爸爸"); } public void show(String..原创 2021-03-21 10:57:06 · 118 阅读 · 0 评论 -
Java类空指针异常错误复现
对象引用传递初步分析引用传递的精髓:同一块堆内存空间,可以同时被多个栈内存所指向,不同的栈可以修改同一块堆内存的内容。下面通过若干个程序,以及程序的内存分配图,来进行代码的讲解。我们来看一个范例:class Person { String name ; int age ; public void tell() { System.out.println("姓名:" + .原创 2021-03-15 22:37:46 · 196 阅读 · 0 评论 -
Java数组基础练习,以及一些方法使用
Java数组基础练习,以及一些方法使用package com.baishi;import java.util.Arrays;public class ArrTest { public static void main(String[] args) { // 1、声明数组 // 声明数组之后,长度不可更改 System.out.println("1、声明数组"); int[] arr1 = new int[3];原创 2021-03-07 20:56:39 · 104 阅读 · 0 评论 -
Java方法_算法迭代基础练习
Java方法_算法迭代基础练习迭代算法需要明确两个点:1、明确递归中止条件2、将问题转换为子问题的每一步,解决该步中剩余部分的问题示例代码:package com.test;public class test3Demo { public static void main(String[] args) { int a = 10; int n = 0; iteration(a,n); } //迭代函数 .原创 2021-03-11 20:59:01 · 126 阅读 · 0 评论 -
利用LeetCode练习Java基础
LeetCode题目:题目链接:https://leetcode-cn.com/problems/reverse-integer/题目描述整数反转给你一个 32 位的有符号整数 x ,返回 x 中每位上的数字反转后的结果。如果反转后整数超过 32 位的有符号整数的范围[−231,231− 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。示例 1:输入:x = 123输出:321示例 2:输入:x = -123输出:-3...原创 2021-03-06 17:48:41 · 187 阅读 · 0 评论 -
java强制类型转换
Java强制类型转换参考代码如下package com.test;public class test { public static void main(String[] args) { int a = 20; byte b = 30; byte c = (byte)(a + b); System.out.println(c); }}原创 2021-03-03 20:19:34 · 65 阅读 · 1 评论 -
Java字节流文件复制练习
Java字节流文件复制练习参考代码import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;public class CopyDemo { .原创 2021-05-03 14:54:23 · 47 阅读 · 0 评论