- 博客(31)
- 资源 (3)
- 收藏
- 关注

原创 深入理解Java虚拟机篇:GC垃圾回收机制总结
有关GC一些概念,完整思维导图可以点这个链接:GC垃圾回收思维导图文章目录1. 对象存活判断(是否需要回收)?1. 1引用计数1.2可达性分析2. 垃圾回收类型3. GC算法3.1标记-清除算法(Mark-Sweep)3.2 复制算法3.3 标记-压缩算法3.4分代收集算法(Generational Collection)★4. 垃圾回收器5. 内存分配与回收策略1. 对象存活判断(是否需要回...
2020-03-10 22:58:44
903
2
原创 深入理解Java虚拟机篇:类加载机制总结
文章目录什么是类加载机制?❤️类加载方式类加载的过程是什么样的?类的生命周期Java虚拟机结束生命周期的情况?类加载机制的种类类加载器种类双亲委派模型❤️什么是类加载机制?❤️类加载机制:虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的java类型,这就是类加载机制。类加载方式命令行启动应用时由JVM初始化加载通过class.forName()方法动态加载通过ClassLoader.loadClass()方法动态加载Cla
2020-08-09 18:49:31
269
原创 设计模式篇-单例模式详解
前情提要:最近在准备面试,发现自己以前学的东西都太窄,太浅了,只知其然而不知所以然,今天内心很复杂,写一下单例模式的总结吧。~~单例模式是设计模式中最最经典的一种设计模式,也是日常使用、面试中常见的设计模式。文章目录一、定义二、类图三、代码实现及解释1. 饿汉式(静态常量)2. 饿汉式(静态代码块)3.懒汉式(线程不安全)4. 懒汉式(线程安全,同步方法)5. 懒汉式(线程安全,同步代码块)6. 双重检查(DCL,Double Check Lock)✨❤️❤️7. 静态内部类✨8. 枚举✨❤️四、.
2020-07-19 20:21:59
609
原创 超详细的Docker总结
文章目录一、Docker简介1. Docker概念Image(镜像)Container(容器)Repository(仓库)2. Docker优势3. Docker劣势4. 容器技术VS虚拟机技术二、Docker安装三、Docker底层运行原理四、Docker常用命令五、 Docker File解析1. 概念2. 构建步骤3. DockerFile构建过程解析六、Docker容器数据卷一、Docker简介1. Docker概念https://blog.youkuaiyun.com/deng624796905/art
2020-05-24 09:55:40
1216
原创 TF-IDF原理及算法实现
一、TF-IDF算法介绍TF-IDF(term frequency–inverse documentfrequency,词频-逆向文件频率)是一种用于信息检索(information retrieval)与文本挖掘(textmining)的常用加权技术.TF-IDF是一种统计方法,用以评估字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF主要思想:如果一个单词在该文章中出现的频率(
2020-05-20 09:29:44
7959
原创 linux批量添加和删除新用户和密码
今天老师给了我一个学生信息的文件,让我在服务器上批量创建用户名和密码都是学生学号的账号。一百多个账号,肯定不能手动建,所以写个脚本进行批量创建是最好不过的办法了。首先,创建user.txt。里面全是用户账号以换行分割比如:user01user02user03其中批量添加用户和密码的脚本如下:(系统是ubuntu)#!/bin/bashfor user in `cat user.txt`do mkdir /home/$user useradd -d /h
2020-05-17 15:01:41
546
原创 手把手进行CentoOS 6.5安装
安装过很多次系统了,每次都没有记下来,想想还是记下来比较好,下次再装的话直接翻看一下就可以了,节省很多思考的时间。1.出现安装界面,点击下一步。2.选择中文简体,点击下一步3.点击下一步4.选择:基本存储设备5.是,忽略所有数据6.设置主机名7.亚洲/上海8.设置root密码,如果想设置简单点,就点击无论如何都使用,不管它的提示。9.创建自定义布局10.点击创建11.点击标准分区,创建12.添加挂载点:/boot,大小200MB(磁盘总共20GB=20480MB)
2020-05-16 14:11:19
532
原创 SpringBoot+JPA+mysql实现简单的增删改查(二)---实战开发
手把手教你实战开发在正式开发之前需要先搭建环境:请参考我的上一篇文章SpringBoot+JPA+mysql实现简单的增删改查(一)—Spring Boot入门一、建立目录结构首先创建以下目录结构,其中分别是:entity层,dao层、service层、serviceImpl实现层、Controller层。二、文件配置及环境application.properties#设置访问页面的...
2020-05-05 15:12:55
878
原创 SpringBoot+JPA+mysql实现简单的增删改查(一)---Spring Boot入门
文章目录一、环境搭建二、文件分析一、环境搭建SpringBoot项目搭建访问 http://start.spring.io/选择构建工具 Maven Project、Java、Spring Boot版本以及其它的信息。设置好之后,点击GENERATE下载项目压缩包。我使用的是Eclipse,可以File->Import->Existing Maven Project-&g...
2020-05-05 15:12:26
2079
原创 知识总结笔记-字典树
1. 概述字典树,又叫单词查找树,Trie树,他是哈希树的变种,是一种N叉树,一种特色的前缀树结构。看下图:哈希树:哈希树可以广泛应用于那些需要对大容量数据进行快速匹配操作的地方。例如:数据库索引系统、短信息中的收条匹配、大量号码路由匹配、信息过滤匹配。哈希树不需要额外的平衡和防止退化的操作,效率十分理想。前缀树:前缀树是N叉树的一种特殊形式。通常来说,一个前缀树是用来存储字符串的。...
2020-04-30 08:59:56
242
原创 java知识笔记-深入分析HashMap
重要!!!前言知识hash的概念一、HashMap一些概念1. HashMap介绍HashMap是一个散列表,它存储的是键值对(key-value)映射。HashMap继承Abstractmap类,实现了Map、Cloneable、java.io.Serializable接口。用一张图解释一下。HashMap的实现是不同步的,也就是说不是线程安全的HashMap的key唯一,...
2020-03-28 22:19:33
293
原创 设计模式篇-建造者模式详解
定义:建造者模式是将各种产品集中起来管理,用来创建复合对象(一个类有不同的属性)。使用范围:当创建复杂对象的算法时应该独立于该对象的组成部分以及他们的装配方式的时候。当构造过程必须允许被构造的对象有不同的表示的时候。角色:在这样的设计模式中,有以下几个角色:– Product:抽象产品类。ConcreteBuilder创建该产品的内部表示并定义它的装配过程,包含定义组成部件的类,...
2020-03-27 10:58:10
220
原创 Java知识笔记--Java线程创建方式、线程池
文章目录创建线程的四种方式1)继承thread类2)实现Runnable接口3)使用Callable和Future创建线程4)使用Executor框架创建线程池1. newFixThreadPool2. newCacheThreadPool3. newSingleThreadExecutor4. newScheduledThreadPool使用线程池可能带来的风险创建线程的四种方式1)继承th...
2020-03-22 14:02:15
302
原创 深入理解Java虚拟机篇:JVM内存结构总结
今天看JVM内存模型,觉的有一篇文章写的比较好,所以引用过来。转载地址:文章目录一、Java虚拟机内存模型1. 线程私有区1.1程序计数器1.2虚拟机栈1. 3本地方法栈2.线程共享区2.1 Java堆TLAB (线程私有分配缓冲区)2.2 方法区运行时常量池2.3 Java堆与方法区的区别2.4 方法区的回收一、Java虚拟机内存模型Java虚拟机在执行Java程序的过程中会把它所管理的内...
2020-03-10 17:12:56
258
原创 Java知识笔记--用户线程、守护线程
文章目录1. 用户线程、守护线程定义2. 用户线程与守护线程的区别3. 守护线程3.1 守护线程的特点3.2 要注意⚠️3.3 守护线程适用场景java分两种线程:用户线程(user thread)和守护线程(daemon thread)。1. 用户线程、守护线程定义守护线程:指程序运行时后台服务线程,比如:垃圾回收线程,当所有非守护线程结束时,程序也就终止,同时会杀死进程中所有的守护线程,...
2020-03-08 22:46:34
321
原创 java实现一个简单的造成死锁的代码
死锁定义: 死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象。下面是两个线程由于相互等待对方资源而造成死锁的例子。public class Main { static Object object1 = new Object(); //创建静态对象object1 static Object object2 = new Object(); //创建静态对象obje...
2020-03-03 23:52:57
1644
原创 【数据结构系列】-B树、B+树、B*树
B树B树,也叫B-树,它是一棵多路平衡搜索树。一个m阶的B树满足以下条件:1. 每个节点最多有m个子节点。(m>=2,m=2时是二叉搜索树)2. 根节点至少有2个子节点,至少1个关键字.(除了一棵树只有根节点外)3. 每个分支节点至少ceil(m/2)[取上限]个子节点(除根节点和叶子节点外)4. 所有叶子节点在同一层。(叶子节点不包含任何信息,可看成额外的节点)5. 有k个子...
2020-03-02 10:07:31
539
1
原创 大数据基准测试平台BigDataBench5.0安装配置及使用
bigDataBench5.0(2019.6月发布)前提:安装hadoop、jdk、g++、gcc、gsl1. 首先就是下载BigDataBench安装包http://125.39.136.212:8090/BigDataBench/BigDataBench_V5.0_BigData_MicroBenchmarkhttp://125.39.136.212:8090/BigDataBench...
2019-11-11 20:04:03
2263
2
原创 Linux下载GSL库并安装
我是ubuntu18.04下安装gsl。GSL是一个GNU支持的科学计算库,提供了很丰富的数值计算方法GSL库地址1. 下载GSL库git clone git://git.savannah.gnu.org/gsl.git查看gsl目录结构2. 编译编译:make(需要等一会)3.测试一下这个库make check出错啦:出错原因及解决方案:https://githu...
2019-11-10 20:07:50
2470
原创 服务器上部署hadoop集群(扩展节点)
0、设置root初始密码sudo passwd一、配置静态ip# interfaces(5) file used by ifup(8) and ifdown(8)auto loiface lo inet loopback#the primary network interface#网卡名称#auto eth0#设置为静态#iface eth0 inet static#静态...
2019-10-24 10:18:04
510
原创 虚拟机里的linux磁盘空间扩容
之前给虚拟机里装了linux系统,但是安装的时候没有想太多,只分了20G,后来安装的东西越来越多,导致linux的磁盘空间不足了,所以就在网上找各种解决办法怎么扩容。如果只是重新再分一个区的话,比较简单的,但是我想要给磁盘主分区再加空间的,所以有点麻烦,特此记录一下本人配置情况:电脑:MacBook虚拟机:VMware Fusion虚拟机里的系统:CentOS 6 64位首先查看自己的...
2019-09-05 13:48:00
1220
4
原创 设置Spark运行程序时不显示log信息
在IDEA中设置不要显示spark的log信息需要导入的包:import org.apache.log4j.Loggerimport org.apache.log4j.Level第一种方式:在main函数中设置def main(args:Array[String]):Unit={Logger.getLogger("org").setLevel(Level.OFF)System....
2019-09-01 17:53:45
2020
原创 Mac电脑上的VMware Fusion安装CentoOS 6设置静态ip
1、首先,查看vmnet8的设置,在Mac电脑的终端上打开/Library/Preferences/VMware\ Fusion/vmnet8中的dhcpd.conf出现如下信息:subnet 192.168.8.0 netmask 255.255.255.0 { range 192.168.8.128 192.168.8.254; option broadca...
2019-08-19 16:40:35
231
转载 Ubuntu下crontab定时任务详细总结
1、定义:cron是服务名称,crond是后台进程,cron的配置文件称为“crontab”,是“cron table”的简写,crontab是定制好的计划任务表。cron服务提供crontab命令来设定cron服务的。2、安装:安装:apt-get install cron一般情况下ubuntu自带cron服务3、crond服务操作命令/sbin/service crond sta...
2019-06-09 11:00:10
1510
原创 在ubuntu服务器上搭建git服务器
安装git$ sudo apt-get install git安装完之后,查看 Git 版本,查看是否安装成功。$ git –version创建git用户和密码$ sudo useradd git$ sudo passwd git创建git仓库我仓库的路径设置为/opt/module/git/gitrepo.git$ mkdir /opt/module/gi...
2019-04-06 16:00:49
306
转载 Ubuntu无法安装rpm包的解决办法
转载自:https://blog.youkuaiyun.com/suleil1/article/details/49471723Ubuntu的软件包格式是deb,如果要安装rpm的包,则要先用alien把rpm转换成deb。sudo apt-get install alien #alien默认没有安装,所以首先要安装它sudo alien xxxx.rpm #将rpm转换位deb,完成后会生成一个同名...
2019-04-05 09:47:28
1363
原创 hive操作错误总结
Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask. org.apache.hadoop.hive.ql.metadata.HiveException: Unable to move source file:解决:退出hive,关闭namenode和datanode,删除namenode的...
2019-03-31 18:30:54
1222
原创 zookeeper完全分布式部署
zookeeper完全分布式部署1. 首先,下载zookeeper压缩包。http://mirrors.shu.edu.cn/apache/zookeeper/官方建议下载stable版本的,就下载stable里的比较稳定。我目前下的是3.4.13的。安装前准备环境:安装jdk2. 将zookeeper-3.4.13.tar.gz拷贝到linux下并解压。将zookeeper安装路径...
2019-03-24 09:06:03
431
原创 教你解决问题:mac电脑卸载双系统中Boot camp助理出现“启动磁盘不能被分区或恢复成单个分区”
问题:启动磁盘不能被分区或恢复成单个分区苹果电脑装了双系统,但是一直用的mac系统,所以打算把windows卸载。看到网上说直接用Boot camp助理卸载就行,但是点“继续”的时候出现问题:启动磁盘不能被分区或恢复成单个分区。接下来就是要解决这个问题啦!可以看到我现在有三个盘,Machintosh HD为mac系统所在盘,这是我要保留的,另外两个是装windows分配的盘,所以需要卸载这...
2019-03-17 01:11:44
51429
8
原创 一步步教学Hadoop完全分布式部署
在Mac电脑下利用parallel desktop 创建4台虚拟机master、data1、data2、data3进行hadoop完全分布式的安装以及环境配置我的主机系统是macOS,虚拟机的系统是CentOS.(可以先配置伪分布式Hadoop试一试,然后再在这个基础上部署完全分布式Hadoop)一、把single Node cluster 复制到data11,克隆主机data1右击主机...
2019-02-28 13:40:33
621
原创 Hadoop配置出现的问题
Hadoop namenode –format 出现问题Hadoop namenode –format后,出现错误:未知的名称或服务解决办法:sudo vi /etc/hosts修改 为 127.0.0.1 localhost 你的主机名我的主机名是hh,就在127.0.0.1的那行后面再加一个hh...
2019-02-03 23:57:18
2780
GC知识框架.png
2020-08-04
TF-IDF中文文章数据集
2020-05-20
BigDataGeneratorSuite.tar.gz
2019-11-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人