自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HDFS 坏块导致的 HiveServer2 启动失败

项目场景:最近在虚拟机上学习数仓相关的一些技术栈,在三台虚拟机上安装了 Hadoop,Hive 等框架,HDFS 上存有一些练习用的数据,不是很多。问题描述有一天启动 Hive 的脚本突然不好用了,脚本的内容主要是启动 Metastore 和 HiveServer2 ,Metastore 启动 OK,没问题,但是 HiveServer2 不行,前一天还是好好的,中间也没有过其他什么能够影响它的操作。原因分析:查看 Hadoop Web 端,发现安全模式开启了。解决方案:# 退出安全模式hd

2022-03-18 18:06:42 2479 2

原创 启动 SpringBoot 报错 BeanCurrentlyInCreationException

由于使用了异步注解导致了启动项目的时候报错,当时只知道注释掉异步注解可以暂时解决问题,但是不清楚具体的原因。 后来查阅了资料,我们需要注意以下两点。直接调用本类方法而非接口方法/代理对象方法会导致 @Async 注解和事务不生效使用了 @Async 注解并且 循环依赖 了,启动时就会报 BeanCurrentlyInCreationException参考资料:使用@Async异步注解导致该Bean在循环依赖时启动报BeanCurrentlyInCreationException异常的根本..

2020-12-06 13:29:57 1085

转载 推荐阅读:命名规范

推荐阅读:https://snailclimb.gitee.io/javaguide/#/docs/system-design/naming常见命名规则以及适用场景这里只介绍 3 种最常见的命名规范。驼峰命名法(CamelCase)驼峰命名法应该我们最常见的一个,这种命名方式使用大小写混合的格式来区别各个单词,并且单词之间不使用空格隔开或者连接字符连接的命名方...

2020-06-27 10:39:04 340

原创 Git 常用命令

笔记来自廖雪峰Git教程1. 创建版本库git init// 初始化一个 Git 仓库git add readme.txt// 把 readme.txt 添加到仓库git commit -m "wrote a readme file"// 将文件提交到仓库, -m 后面是本次提交的说明git status// 查看仓库当前的状态git diff readme.t...

2020-06-10 21:24:25 175

转载 推荐阅读:通俗易懂的介绍IOC

推荐阅读:https://www.zhihu.com/question/23277575/answer/169698662

2020-06-10 21:24:25 154

原创 十一贝面试复盘

4.4 笔试保险相关业务知识,笔试前十一贝给的材料中有。然后有一道通用技术题,一道给后端准备的题。4.12 一面Java 中的异常Spring 的 IOC 与 AOP 原理Java 中线程池Java 中如何保证线程安全用数组实现一个栈项目相关4.15 二面项目相关二面的面试官问了一些项目的问题,之后聊了聊之前的实习经历。介绍了十一贝的技术体...

2020-05-07 23:48:37 520 1

原创 美团面试复盘

3.26 笔试当时 A 了 1.18 成绩不是很理想。有一道黑白环的题其实很好答,当时浏览五道题的时候不是很仔细,如果先答黑白环的话,可能最后成绩还会再高一些。当时大部分时间都用到第二题上了,结果才 A 了 0.18,面试的时候一定花一部分时间多看看题,把时间优先用在最容易并且有思路的题上面。4.2 一面一面的面试官上来就问了很多的项目问题,大家一定要熟悉自...

2020-04-11 23:55:54 496

原创 之字形遍历二叉树

昨天面试了美团的后端,一面最后问了一道这样的算法题,我只写了个层次遍历,那道题返回的是一个嵌套的 ArrayList ,然后我跟面试官说再遍历这个 ArrayList 将其中的需要逆序的在进行逆序。之后面试官就问我这样实现的时间复杂度,我也没答上来。 :(这道题是 LeetCode 上的会员题目,不过左程云的书里面也有。思路是使用双端队列,在遍历从左到右的层时...

2020-04-03 14:31:05 416

原创 车主邦的三道笔试题

将⼀组忽略⼤王⼩王的扑克牌,从⼩到⼤排序,请尽量选择时间复杂度低的⽅案(忽略花⾊,2最 ⼤,A⽐K⼤,2⽐A⼤) 输⼊: 第⼀⾏是给出牌的数量,第⼆⾏为牌的值 7 J Q Q A K 3 2 输出: 3 J Q Q K A 2层次遍历输出⼆叉树:给定⼀个整数⼆叉树,要求从上往下输出每层的元素值。给定⼀个整数数组,要求输出⼀个同样⼤⼩的数组,输出的数组每个...

2020-03-29 20:54:50 218

原创 Cannot resolve MVC View **

使用 SpringBoot 集成了 FreeMarker 之后,我就想着测试一下 FreeMarker 是否正常。可是在写好了 Controller,templates 之后,却一直 404,控制台并没有报异常。回到 IDEA 中看了下 Controller 中的 return “demo”; // demo 是模板名,果然被标线了,提示 Cannot reso...

2020-03-29 20:36:45 1444

原创 Dependency ** not found

最近在做学校的毕设,用的技术是 SpringBoot + FreeMarker,需要用 Maven 进行包管理。在 pom.xml 中提示找不到 FreeMarker 这个依赖,这时候需要先检查一下我们的 Maven 镜像配置是否错误,大家常用的阿里镜像实际只镜像了 central,所以镜像配置最好像下面这样写。<mirror> <...

2020-03-29 20:35:51 437

原创 Hexo 上传 GitHub 失败

平时写完博客都是使用如下的命令来生成并部署,g 代表生成模板,d 代表部署到 GitHub。hexo g -d以前这命令都用的好好的,今天突然报出了如下错误。看了下就是 ssh 通过 22 端口连接不上。ssh: connect to host github.com port 22: Connection timed outfatal: Could not r...

2020-01-23 14:03:42 908

原创 2020新的一年

2019 就这样过去了,过去一年有很多我过的不满意的地方,我也曾反反复复回想,有过失落与后悔。但是该过的总会过去的,我的目标还没有实现,要想过的更好我还要继续向前。2020,就向前看吧,继续努力! ...

2020-01-16 14:24:00 158

原创 100 道算法题

左程云在牛客网上发帖子说过建议 80% 备战面试的时间放在数据结构和算法上,剩下的 20% 的时间再放在基础知识上。CYC2018 在小专栏里也说过 100 道 LeetCode 会对面试帮助很大。虽然来来回回看了好些遍左程云那个初级算法课程,但是有的地方还是记不牢,准备面试的时间大部分还是花在了阅读和理解知识点上。我觉得还是把重点放回来吧,把左程云算法课程中的题...

2020-01-16 14:02:20 240

原创 二叉树每层最大值的节点

昨天下午去面试字节的后端,算法题是这一道。public class GetLevelMax { public static void main(String[] args) { // 建立一颗二叉树 TreeNode root = new TreeNode(1); root.left = new TreeNode...

2019-12-24 15:09:24 1188

原创 类加载的时机

以下内容来自《深入理解 Java 虚拟机》(第二版)——周志明在 Class 文件中描述的各种信息,最终都需要加载到虚拟机中之后才能运行和使用。虚拟机把描述类的数据从 Class 文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的 Java 类型,这就是虚拟机的类加载机制。与那些在编译时需要进行连接工作的语言不同,在 Java ...

2019-12-22 14:53:00 134

原创 垃圾收集器

以下内容来自《深入理解 Java 虚拟机》(第二版)——周志明这里讨论的收集器基于 JDK 1.7 Update 14 之后的 HotSpot 虚拟机。上图展示了 7 种作用于不同分代的收集器,如果两个收集器之间存在连线,就说明它们可以搭配使用。Serial 收集器Serial 收集器是最基本,发展历史最悠久的收集器。他是一个单线程的收集器,但它的 “...

2019-12-18 15:16:55 119

原创 垃圾收集算法

以下内容来自《深入理解 Java 虚拟机》(第二版)——周志明标记 - 清除算法(Mark-Sweep)算法分为 “标记” 和 “清除” 两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象。它的不足主要有两个:一个是效率问题,标记和清除两个过程的效率都不高;另一个是空间问题,标记清除之后会产生大量不连续的内存碎片,空间碎片太多可能会...

2019-12-18 14:04:16 119

原创 回收方法区

以下内容来自《深入理解 Java 虚拟机》(第二版)——周志明Java 虚拟机规范中确实说过可以不要求虚拟机(或者 HotSpot 虚拟机中的永久代)在方法区实现垃圾收集,而且在方法区中进行垃圾收集的 “性价比” 确实比较低:在堆中,尤其是新生代,收集一次一般可以回收 70% ~ 95% 的空间,而方法区中是远远达不到的。永久代的垃圾收集主要回收两部分内容:废...

2019-12-18 13:22:54 157

原创 判断对象是否死亡

以下内容来自《深入理解 Java 虚拟机》(第二版)——周志明在堆里面存放着 Java 世界中几乎所有的对象实例,垃圾收集器在对堆进行回收之前,需要确定这些对象当中哪些还存活着,哪些已经死去(即不可能再被任何途径使用的对象)。引用计数算法给对象添加一个引用计数器,每当一个地方引用它,计数器加 1;当引用失效时,计数器减 1。引用计数实现简单,判定效率也很高...

2019-12-18 12:48:03 179

原创 运行时数据区域

以下内容来自《深入理解 Java 虚拟机》(第二版)——周志明Java 开发比 C++ 开发更容易的地方在于 JVM 提供了内存动态分配和垃圾收集技术。Java 虚拟机在执行 Java 程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些数据区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结...

2019-12-17 10:47:00 116

原创 SQL 中 WHERE 和 HAVING 的区别

概述“WHERE” 是一个约束声明,使用 WHERE来约束来之数据库的数据,WHERE 是在结果返回之前起作用的,且 WHERE 中不能使用聚合函数。“HAVING” 是一个过滤声明,是在查询返回结果集以后对查询结果进行的过滤操作,在 HAVING 中可以使用聚合函数区别在说区别之前,得先介绍 GROUP BY 这个子句,而在说 GROUP BY 子句前,又得...

2019-12-12 22:44:10 159

原创 Mybatis 中 $ 和 # 的区别

‘#’ 是将传入的值当做字符串的形式,eg:select id,name,age from student where id =#{id},当前端把 id 值1,传入到后台的时候,就相当于 select id,name,age from student where id = ‘1’.‘$’ 是将传入的数据直接显示生成 sql 语句,eg: select id...

2019-12-11 15:33:37 141

原创 IOC与AOP

后端 Java 岗,关于 Spring 中 IOC 与 AOP 的概念是被问到最多的,从我开始面试起,这个问题大概遇到过五六次了,今天就来总结一下。AOPAOP 即面向切面编程,可以说是 OOP(面向对象编程)的补充和完善。OOP 引入 封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合。不过 OOP 允许开发者定义纵向的关系,但并不适合定...

2019-12-09 21:48:46 137

原创 线性表去重

在一个线性表中可能包含有重复节点。重复节点是指数据域的值相同的节点。试编写一个删除重复节点,只保留其中序号最小的一个的算法。例如,线性表(3,1,2,1,5,3,1)经过删除重复节点运算后为(3,1,2,5)import java.util.*;public class DeWeighting { public static void main(Strin...

2019-11-16 16:27:19 586

原创 左神基础算法笔记-七

1. 前缀树(trieTree/prefixTree)上图中的前缀树由“abc””abd””bcd””bkc”四个字符串组成,可以在前缀树的节点中封装数据项来增强前缀树的功能。public static class TrieNode { public int path; public int end; public TrieNode[] nexts; ...

2019-11-03 15:51:32 279

原创 更换电脑后继续使用Hexo

参考知乎回答最近换了新电脑,之前电脑上布置Hexo的文件夹被我整个拷贝了过来,但是拷贝过来之后发现并不能直接的拿来继续使用,具体步骤如下:1. 首先需要安装 git(推荐集成git的cmder) 和 node.js2. 安装 hexo$ npm install -g hexo-cli3. 保留 .gitignore 中的文件,删除其余的4. 在博客目录下执行 ...

2019-11-02 22:40:51 227

原创 Linux_unable_to_resolve_host_XXXXXXXX

原文链接环境:Ubuntu16.04MySQL5.7Ubuntu环境,有时候执行sudo 就出现这个警告讯息: sudo: unable to resolve host XXXXXXXX这个警告是因为系统找不到一个叫做 XXXXXXXX 的hostname 通过 修改 /etc/hosts 设定, 可以解决在127.0.0.1 localhost...

2019-10-24 16:52:29 190

原创 远程连接MySQL失败10061

原文链接环境:Ubuntu16.04MySQL5.7使用 Navicat 远程连接阿里云上的MySQL报了错误:Can’t connect to MySQL server on xxx (10061)首先检查是否放行了用于远程连接 MySQL 的 3306 端口,可以登录阿里云控制台,在防火墙中放行 3306。或者使用以下语句检查 3306 端口...

2019-10-24 15:08:05 751

原创 Ubuntu16.04安装MySQL5.7

原文链接安装MySQL在 Ubuntu 16.04 中,默认情况下,只有最新版本的 MySQL 包含在 APT 软件包存储库中。在撰写本文时,那是 MySQL 5.7要安装它,只需更新服务器上的包索引并安装默认包 apt-get。sudo apt-get updatesudo apt-get install mysql-server系统将提示您在安装过程中...

2019-10-24 14:38:29 142

原创 更改Ubuntu命令提示符

在阿里云买的学生机,就是轻量应用服务器,这种服务器的主机名都特别长,大概就是下面这样子的。root@iZ2zegu3lzfytl5gn9dvc8Z:/etc# ls于是想把它改掉,一种方法是直接更改变量 PS1,这种方法更改完之后重新连接 Shell 命令提示符还会变回来。一劳永逸的办法是更改 ~/.bashrc 这个配置文件。其中,PS1 就代表命令提示符,...

2019-10-23 22:22:20 600

原创 高思教育面试总结

一面:Spring 中 @Component 和 @Service 注解有什么区别@Component 是一个通用的注解,@Repository、@Controller 和 @Service 都是这个注解的拓展,并且具有特定的功能。@Repository 注解在持久层中,具有将数据库操作抛出的原生异常翻译转化 Spring 的持久层异常的功能;@Cont...

2019-10-22 17:45:36 363

原创 笔试处理输入模板

// 使用 BufferedReader// 接受一行作为字符数组,再将字符数组中每个字符转换为整型import java.io.*;import java.util.*;public class Main{ public static void main(String[] args)throws IOException{ BufferedRe...

2019-10-09 15:13:09 179

原创 左神基础算法笔记-六

1. 图的表达、存储和生成方式图分为有向图和无向图,无向图可以用有向图来表示。邻接表上图用邻接表表示如下:1:22:3,43:44:null如果上图为无向图,则邻接表表示如下:1:22:1,3,43:2,44:2,3邻接矩阵上图用邻接矩阵表示如下:1:(2,7),(3,5)2:(3,2)3:null图中点的存...

2019-10-06 17:22:25 250

原创 左神基础算法笔记-五

1. 认识哈希函数和哈希表哈希函数哈希函数有很多种实现方式,md5,sha1。相似输入经过哈希函数后天差地别。标准哈希函数输入域是无穷的,返回值是有范围的。same input same outdifferent input maybe same out(哈希碰撞)离散性:输入域中的所有值均匀分布在返回范围上。(返回范围模后也均匀分布)(离散性越好的哈...

2019-09-14 17:22:25 192

原创 左神基础算法笔记-四

1. 二叉树先序、中序、后序遍历的非递归实现先序遍历:使用栈实现,栈中先压入二叉树根节点,然后循环以下过程,先弹出一个节点,随后压入该节点的右孩子,再压入该节点的左孩子……(这样弹出时就是左孩子先弹出,右孩子再弹出,满足先序)/** * Definition for a binary tree node. * public class TreeNode { * ...

2019-09-14 11:26:00 131

原创 来北京一个月

来北京一个多月了,在公司的一个多月时间,也了解我参与的这个项目大概是怎么回事。我这部分主要就是使用一个公司的批量开发平台进行开发,平台可以在部署了Hadoop上的集群上跑任务。说实话我还是不太对这块感兴趣,一方面我依然憧憬着大厂的薪资,工作环境和各种福利;另一方面我也告诉自己不能好高骛远,要先把手头工作做好。这一个月多的时间里我也在不断的学习,争取在秋招中在搏...

2019-09-13 21:02:43 121

原创 算法的复杂度与Master定理

原文链接平时设计或者阅读一个算法的时候,必然会提到算法的复杂度(包括时间复杂度和空间复杂度)。比如我们说一个二分查找算法的平均时间复杂度为O(log n),快速排序可能是O(n log n)。那这里的O是什么意思?这样的表达是否准确呢?今天来复习一下与算法复杂度相关的知识:函数渐进阶,记号O、Ω、θ和o;Master定理。先插一句,在算法复杂度分析中,log...

2019-09-11 16:12:14 497

原创 左神基础算法笔记-三

1. 用数组结构实现大小固定的队列和栈// 使用一个index, index比数组下标大1public static class ArrayStack { private Integer[] arr; private Integer index; public ArrayStack(int initSize) { if (i...

2019-09-06 00:19:51 247 2

原创 左神基础算法笔记-二

以下三种排序的时间复杂度都是O(N*logN),但额外空间复杂度不同,归并排序是O(N)(辅助数组),快速排序是O(logN)(记录断点的深度),堆排序是O(1)。1. 归并排序的细节讲解与复杂度分析归并排序是一种递归,递归就是自己调用自己,定义的过程中有一个子过程,过程与子过程中的流程是一致的,但子过程的规模小于过程。base case:到什么程度不需要再划...

2019-09-05 23:35:48 248

空空如也

空空如也

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

TA关注的人

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