自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HDFS文件块大小

HDFS中的文件在物理上是分块存储(Block),块的大小可以通过配置参数(dfs.blocksize)来规定,默认大小在Hadoop2.x版本中是128M,老版本中是64M。2、如果块设置的太大,从磁盘传输数据的时间会明显大于定位这个块开始位置所需的时间。导致程序在处理这块数据时,会非常慢。1、HDFS的块设置太小,会增加寻址时间,程序一直在找块的开始位置。总结:HDFS块的大小设置主要取决于磁盘传输速率。块的大小不能设置太小,也不能设置太大。

2023-11-02 18:31:03 111

原创 大数据技术之HBase之读数据流程和写数据流程

一、读数据流程 Client首先访问Zookeeper集群,根据命令空间、表的名字和行键在元数据表中找到对应的re

2021-05-28 10:09:03 201

原创 Shell编程之流程控制

一、shell概述Shell是一个命令行解释器,可以接收应用程序和用户的命令,然后调用操作系统的内核。Shell还是一个功能相当强大的编程语言,易编写、易调试、灵活性强。二、流程控制2.1 if判断基本语法if [ 条件判断式 ];then 程序fi或者if [ 条件判断式 ] then 程序elif [ 条件判断式 ] then 程序else 程序fi(1)[ 条件判断式 ] 中括号和条件.

2021-04-28 21:20:50 235

原创 二、大数据技术之Hadoop --从Hadoop框架讨论大数据生态

1、从Hadoop框架讨论大数据生态1.1 Hadoop是什么1)Hadoop是一个又Apache基金会开发的分布式系统基础架构。2)主要解决:海量数据的存储和海量数据的分析计算问题。3)广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈。1.2 Hadoop发展历史1)Lucene框架是Doug Cutting开创的开源软件,用Java书写代码,实现与Google类似的全文搜索功能,它提供了全文检索引擎的架构,包括完整的查询引擎和索引引擎。Hadoo

2021-04-22 12:08:39 465 1

原创 一、Linux入门

目录1、概述2、Linux和Windows区别3、Centos下载地址1、概述Linux内核最初只是由芬兰人林纳斯.托瓦斯(LinusTorvalds)在赫尔辛基大学上学时出于个人爱好编写的。Linux是一套免费试用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多..

2021-04-11 18:42:25 73

原创 一、大数据技术 --概论

1、大数据概论1.1 大数据概念大数据(Big Data):指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。主要解决:海量数据的存储和海量数据的分析计算问题。数据的存储单位(由小到大):bit、Byte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB。1Byte=8bit 1K=1024Byte 1M=1024K 1G=10...

2021-04-09 08:54:48 507

原创 (63)Java基础 --Stream API

目录一、概述二、Stream类型数据的获取三、Stream中的常用方法四、练习一、概述在jdk1.8中,提供了一个Stream类型,可以对数据进行过滤好处: 比不断的自定义循环,要简单很多public class Demo01_StreamAPI { public static void main(String[] args) { ArrayList<String> names = new ArrayList<>...

2021-03-12 08:11:08 39

原创 (62)Java基础 --函数式接口

目录一、概述二、常用内置函数式接口1、消费型接口2、方法引用3、供给型接口4、函数型接口5、断言型接口6、其他接口介绍一、概述Lambda表达式使用的前提,就是接口必须是一个函数式接口。定义 如果在接口中,只有一个抽象方法,那么这个接口就是函数式接口。格式 使用注解来检查当前接口是否是一个函数式接口 @FunctionalInterface 如果不是函数式接口,则编译报错作用 想表达的是一个方法的内容,...

2021-03-12 07:48:18 169

原创 (61)Java基础 --Lambda表达式

目录一、引入二、Lambda语法和使用1、语法格式一、引入需求:启动一个线程并输出一句话 @Test public void testTradition() throws Exception { new Thread(new Runnable(){ @Override public void run() { System.out.println("使用传统方式开启线程"); } }).start(); }本着“万物皆对象”的思想,创建

2021-03-11 21:38:54 115

原创 (60)Java基础 --单元测试

目录一、测试的概念二、使用Junit4.x进行单元环境1、环境搭建2、使用步骤3、常见注解三、规范的Junit测试方式四、断言1、为什么要使用断言2、什么是断言(猜测)3、常用API一、测试的概念先认识到测试的重要性:优秀的软件不是开发出来的,而是测试出来的。软件测试分类:黑盒测试白盒测试黑盒测试:测试工程师 黑盒测试又称功能测试,主要检测每个功能是否都能正常使用。 在测试中,把程序看...

2021-03-11 18:39:09 953

原创 (59)Java基础 --反射-reflect

目录一、引入二、Class类理解三、获取类的字节码对象(Class类型对象)的三种方式四、Class的newInstance()方法创建对象五、反射构造方法六、反射方法七、反射调用静态方法和数组参数方法八、反射属性九、反射其他的API十、反射应用—泛型擦除一、引入到目前为止我们已经知道了当一个class文件被类加载器加载进内存时,会在JVM中将形成一份描述该class文件结构的元信息对象Class,通过该对象JVM就可以获知class文件的结构信息:如构造器,

2021-03-11 16:34:01 225

原创 (58)Java基础 --Java类加载机制

目录一、类加载的原理二、类加载时机三、类加载器 ClassLoader1、什么是类加载器2、类加载器的分类3、全盘负责委托机制4、自定义类加载器(了解)5、实现类的热部署(了解)一、类加载的原理当一个class文件被加载进内存时,在JVM中将形成一份描述该class文件结构的元信息对象Class,通过该对象可以获知class文件的结构信息:如构造器,字段,方法等。虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟

2021-03-10 08:35:31 83

原创 (57)Java基础 --多线程 --线程的生命周期

目录一、概述二、java中关于线程状态的描述三、线程状态图四、守护线程(后台线程)一、概述线程是一个动态的概念,有创建的时候,也有运行和变化的时候,必须也就有消亡的时候,所以从生到死就是一个生命周期。在生命周期中,有各种各样的状态,这些状态可以相互转换。新建态:刚创建好对象的时候,刚new出来的时候就绪态:线程准备好了所有运行的资源,只差cpu来临运行态:cpu正在执行的线程的状态阻塞态:线程主动休息、或者缺少一些运行的资源,即使cpu来临,也无法运行死亡态:线程

2021-03-08 22:28:04 65

原创 (56)Java基础 --多线程 --线程安全

目录一、线程安全的概述二、线程同步(线程安全处理Synchronized)1、同步代码块2、同步方法三、Lock接口1、Lock接口中的常用方法一、线程安全的概述如果有多个线程在同时运行,而这些线程可能会同时运行这段代码。程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。我们通过一个案例,演示线程的安全问题: 电影院要卖票,我们模拟电影院的卖票过程。假设要播放的电影是 “功夫熊猫3”,本次电影的座位共100个(...

2021-03-08 21:26:13 71

原创 (55)Java基础 --多线程

一、多线程的概述进程:进程指正在运行的程序。确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能。线程:线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程。一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。简而言之:一个程序运行后至少有一个进程,一个进程中可以包含多个线程。什么是多线程呢?即就是一个程序中有多个线程在同时执行。通过下图来区别单线程程序与多线程程序的不同:单线程程序:即,若有多个

2021-03-08 20:45:30 85

原创 (54)Java基础 --IO流 --字符型缓冲流

目录一、BufferedReader二、BufferedWriter三、PrintWriter(字符打印流)一、BufferedReaderReader有一个子类BufferedReader。子类继承父类显然子类可以重写父类的方法,也可以增加自己的新方法。例如一次读一行就是常用的操作.那么BufferedReader 类就提供了这个方法,可以查看readLine()方法具备 一次读取一个文本行的功能。很显然,该子类可以对功能进行增强。(装饰者模式)。高效的原因:Buffere

2021-03-07 16:57:27 70

原创 (53)Java基础 --IO流 --转换流

一、作用字节流转换为字符流。有时,我们需要将字节流转换为字符流,使用InputStreamReader和OutputStreamWriter。(适配器模式 Adaptor) 23设计模式之一/** * 转换流: 作用: 将字节流转换成字符流 InputStreamReader OutputStreamWriter */public class Test { public static void main(String[] args) throws Exception{ .

2021-03-07 16:51:02 82

原创 (52)Java基础 --IO流 --System.in 和 System.out

目录一、System.in二、PrintStream(字节打印流)1、构造方法一、System.in监听键盘输入(控制台输入)InputStream is =System.in;is.read();二、PrintStream(字节打印流)打印字节流:System.out就是这个类型的流对象在该类型中,提供了很多的print和println的方法,可以将各种数据类型转换成字符串进行输出注意事项: 1、如果直接使用System.out的方式来获取PrintStr.

2021-03-07 16:48:40 175

原创 (51)Java基础 --IO流 --字符流

目录一、字符的概述二、Reader1、常用方法三、Writer1、常见的方法四、使用字符流完成文件拷贝。一、字符的概述使用字节流完成文件拷贝,看起来是一个普通程序,但是它使用的是一种低级的IO。如果针对的内容由字符组成,最好使用字符流,字节流只适用于最为原始的IO。java平台使用Unicode来存储字符。字符流自动在本地字符集和Unicode这种国际通用格式之间转换。例如在西方国家,本地字符集通常是ASCII,在应对国际化的时候,程序员不用做额外的处理。

2021-03-07 16:41:19 104

原创 (50)Java基础 --IO流 --字节流

目录一、字节流的概述二、InputStream1、常用方法2、FileInputStream构造方法3、read() 方法4、read(byte[] arr)5、skip(n)6、注意三、OutputStream1、FileOutputStream构造方法2、常用方法四、使用字节流完成文件的拷贝五、字节型缓冲流一、字节流的概述可以直接操作字节信息的流对象 根据流向,可以分成字节输入流和字节输出流 顶层抽象父类分别是:InputStream 和

2021-03-07 16:01:19 217

原创 (49)Java基础 --IO流

一、IO流的概念File对象可以表示存在的文件或文件夹,也可以表示不存在的。我们想要得到文件怎么办,File只是操作文件,文件的内容如何处理就需要使用IO流技术了。例如在C盘下有一个名称为a.txt的文本文件.想要通过Java程序读出来文件中的内容,需要使用IO流技术.同样想要将程序中的数据,保存到硬盘的文件中,也需要IO流技术。IO:Input和Output两个单词的缩写,input是输入,output是输出所有输入流都有一个“源”,有读的行为,所有输出流都有一个“目标”,有写的行

2021-03-07 15:38:42 68

原创 (48)Java基础 --File类

目录一、File的概念二、相对路径和绝对路径三、File类的构造方法四、File类的常用方法1、创建的方法2、删除的方法3、重命名4、判断功能的方法5、获取功能的方法6、案例一、File的概念Java.io包下代表平台无关的文件和目录。也就是说如果希望在程序中操作文件或目录都可以通过File类来完成。File可以新建、删除、和重命名文件和目录。但File不能访问文件本身,如果需要访问文件内容,则需要 I/O。File类的实例表示一个文件或者目录(文件夹

2021-03-05 21:12:19 89

原创 (47)Java基础 --Map(映射)

目录一、Map的含义二、Map的特点三、Map结构图四、Map常用方法五、HashMap(1)使用HashMap演示以上方法(2)Map遍历(3)案例六、HashTable七、TreeMap八、LinkedHashMap九、斗地主练习一、Map的含义Map:双列集合的顶层接口Map:单词含义,地图,地图上的每个点,都表示了生活中的一个具体位置。地图的点和生活中的位置,有一个一一对应的关系,这种关系是通过穷举的方式来描述的。Map是一个以键(ke

2021-03-05 15:08:50 488

原创 (46)Java基础 --泛型

一、泛型的概述定义 广泛的类型,在定义一个类的时候,类型中有些方法参数、返回值类型不确定,就使用一个符号,来表示那些尚未确定的类型,这个符号,就称为泛型。使用 对于有泛型的类型,在这些类型后面跟上尖括号,尖括号里面写上泛型的确定类型(在使用某个类创建对象时,已经可以确定这个具体的类型了,那么就直接写出具体类型)。 例如:List<Integer> al = new ArrayList<Integer>();泛型的好处 ...

2021-03-04 21:04:27 1123 1

原创 (45)Java基础 --集合

目录一、集合的概念二、集合和数组的区别三、集合家族四、Collection接口1、增加2、删除3、修改4、判断5、获取6、自定义类的对象在集合中的操作7、Collection接口的子接口五、Set接口1、HashSet2、泛型(入门)3、迭代器和增强型for循环4、HashSet案例5、TreeSet类6、比较器7、TreeSet案例六、List接口1、List中的方法2、ArrayList3、LinkedList

2021-02-28 19:42:35 471

原创 (44)Java基础 --异常

目录一、异常的概述1、现实生活的病2、程序中意外情况的处理方式3、异常的含义4、java异常处理的机制二、异常的语法三、异常的分类四、Error五、Throwable类六、运行时异常和非运行时异常(1)运行时异常(RuntimeException)(2)非运行时异常(受检查异常)七、多重catch块八、程序中的异常处理(1)自行处理(2)throws 关键字(3)手工抛出异常 (throw关键字)九、自定义异常十、finally

2021-02-27 22:05:39 203

原创 (43)Java基础 --匿名内部类

目录一、内部类的概念二、使用内部类的理由三、内部类的分类四、普通的成员内部类五、私有的成员内部类六、静态的成员内部类七、局部内部类八、匿名内部类【常用】一、内部类的概念在一个类内部定义的类叫做内部类。包含这个内部类的类叫做外部类。一个器件可能会包含专用的内部器件,内部类的作用相当于这些内部器件。public class Demo01_内部类概述 { private int id; private String name; class MyInner{/

2021-02-27 11:53:57 118

原创 (42)Java基础 --包装类

一、为什么会有包装类Java语言一直宣称自己是完全面向对象的语言,但对于基本数据类型并没有做到面向对象。int x = 100在方法调用时,在栈内存为基本数据类型变量分配空间。对应每个基本数据类型,都有一个对象类型与之对应,为之服务。byte Byteshort Shortint Integerlong Longfloat ...

2021-02-27 10:57:40 73

原创 (41)Java基础 --递归

目录一、递归的概述二、定义递归方法的两个必备条件三、方法调用栈四、递归案例一、递归的概述递归就是一个方法直接或者间接地调用自身。递归是解决复杂问题的重要方法。递归的思想就是数学上递推的思想。把大任务降解为与之类似的规模更小的任务。比如:public void printNum(int n){ System.out.println(n); // 调用自己 printNum(n-1);}当一个功能比较复杂时,可以把功能向下分解,分解出来的功能的计算

2021-02-27 10:33:59 101

原创 (40)Java基础 --工具类和常用类 --System类

System类java.lang.System一、概述用于描述系统资源的类型,该类不用创建对象,直接使用静态变量和静态方法即可。System类是与系统相关的一个类, 从它里面可以得到与系统相关的属性。比如: 操作系统的名称,版本等,jre的安装目录,java的版本。二、常用字段System.in:标准输入流,默认关联到键盘上 System.out:标准输出流,默认关联到控制台上 System.err:标准错误输出流,默认关联到控制台上,用于打印错误信息,在ec...

2021-02-26 16:54:14 70

原创 (39)Java基础 --工具类和常用类 -Random类

Random类java.util.Random一、作用Random类可以随机得到一个数字,而且可以在某一个范围内随机得到一个数字。二、构造方法Random()三、常用方法nextBoolean() 随机生产true 或falsenextDouble() 随机生产 0 到1 之间的随机浮点数nextFloat()随机生产 0 到1 之间的随机浮点数nextInt()随机生产整数nextLong() 随机生产整数nextInt(n) 随机生产 0 到...

2021-02-26 16:38:20 95

原创 (38)Java基础 --工具类和常用类 --Math类

Math类java.lang.Math一、作用Math类封装了很多数学的功能(都是静态方法和静态属性)。二、Math类一些常用方法abs(num):求绝对值 round(num):四舍五入 cbrt(num):求立方根sqrt(num):求平方根max(num,num):返回两个num值中的最大值min(num,num):返回两个num值中的最小值ceil(num):向上求整 floor(num):向下求整 random():随机得到一个[0,1).

2021-02-26 16:25:35 68

原创 (37)Java基础 --工具类和常用类 --BigDecimal类

BigDecimal类java.math.BigDecimal一、作用float、double两种浮点数类型运算是不够精确,不仅是java语言,很多编程语都有这样的问题。为了能够精确表示和计算浮点数,java提供了BigDecimal类。二、构造方法BigDecimal(Stringval) 将BigDecimal的字符串表示 BigDecimal转换为 BigDecimal 。 三、常用方法1.add(BigDecimalaug...

2021-02-26 11:11:10 113

原创 (30)Java基础 --抽象类

一、抽象方法只有方法声明,没办法实现方法体的方法,就可以定义成一个抽象方法。用abstract关键字修饰的方法,称为抽象方法。抽象方法的特点:只有方法的声明,没有方法体。定义格式: public abstract 返回值类型 方法名(形参列表);抽象方法的作用:被子类重写,为子类规定了方法的调用格式,具体的操作内容等待子类去完成。二、抽象类如果在类中定义了抽象方法,哪怕只定义了一个抽象方法,那么这类就必须定义成抽象类。但是,并不是说抽象类中必须定义抽象方法,可以...

2021-02-25 13:35:13 83

原创 (29)包和访问权限

一、包1、包的概念包是Java程序组织文件的一种方式,实质就是文件夹。包的作用:1、方便管理大型软件系统中数目众多的类。2、相同名称的类可以放到不同的包中解决了命名冲突的问题。在项目中创建包的规则: 1.见名知意,而且都小写; 2.一般在项目中是先创建一个最顶层的包: 使用公司域名的倒写 + 项目名的英文缩写 例如: mobile office...

2021-02-24 20:41:04 271

原创 (28)Java基础 --final关键字

一、final概述final是个修饰符。final是最终的,不可修改的意思。final可以修饰类,方法,成员变量,局部变量,方法形参二、final修饰变量此时的变量转为常量。此变量在第一次被赋值后,再不能修改它的值。public class Test{ private final int age=10; // 必须赋值 public void method(){ age = 100; // 编译报错,不能重新赋值 }}成员常量一般也做成static类型,因为

2021-02-24 19:39:25 84

原创 (27)Java基础 --Object类

一、Object类型的概述Object类是所有类型的顶层父类,所有类型的直接或者间接的父类;所有的类型中(包括数组)都含有Object类中的所有方法。随意定义一个类型,不手动显式定义其父类,那么这个类的父类就是Object类。二、Object类的构造方法Object类的构造方法:Object()1、可以自己创建对象。2、让子类访问,所有子类都会直接或者间接的访问到这个顶层父类的构造方法。3、Object类在执行构造方法时,不去访问自己的父类,因为没有父类了。三、Object类

2021-02-24 16:51:23 183

原创 (26)Java基础 --继承

一、继承的概述二、继承的语法三、继承的术语四、java中继承的规定五、方法重写(覆盖 override)六、重载与重写的区别七、super关键字八、构造方法的特殊性九、instanceof关键字

2021-02-23 18:23:37 129

原创 (25)Java基础 --字符串缓冲区StringBuilder

目录一、概述二、构造方法三、常用的一些方法1、获取容积的方法2、添加字符串的方法3、删除字符串的方法4、替换和反转字符串的方法5、练习四、String和StringBuilder拼接字符串的区别五、String和StringBuilder的相互转换六、StringBuffer和StringBuilder的区别七、String和StringBuilder作为方法的参数八、字符串的比较 ==和equals一、概述StringBuilder类的对象.

2021-02-23 14:29:09 470

原创 (24)Java基础 --String类

一、概述String就是字符串类型,属于java.lang包,不需要导包 所有的字符串常量(“Hello World”、”abc”)都属于String类型的对象 字符串字面值属于常量,存储在方法区的常量池中。 String类型在创建之后就无法更改(是一个不可变的字符序列)。 不可变的原因是String类型只提供了构造方法,没有提供set方法,因此只能在创建对象的时候,初始化成员变量,将来对象创建完成之后,无法通过方法来修改。二、常量池对程序而言,全部String字面值中往往有大量的冗余,为

2021-02-21 21:34:12 242

空空如也

空空如也

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

TA关注的人

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