摘要: 又是来自我的好朋友 EvilSay 的投稿,以下是原文: 1、基本定义 二分搜索树的每个子节点最多有两个叶子节点 二分搜索树的每个节点最多有一个根节点 存储的元素必须具有可比较性 二分搜索树每个子节点的值 大于其左子节的所有节点的值 小于其右子节点的所有节点的值 二分搜索树不一定是满的 2、二分搜索 阅读全文
posted @ 2020-01-17 15:46 JavaFish 阅读(249) 评论(0) 推荐(0)
摘要: 前言 来自我的好朋友 EvilSay 的投稿,以下是原文: 冒泡排序,相信大家听到这四个字都觉得很简单,我觉得也是,但能不能更简单呢?比如,用递归实现。 普通冒泡 请务必按照数字顺序阅读代码 6 7 null 1: 获取的节点为空时(当前节点为6)返回Null给上一层递归,如果有的。 2: (当前节 阅读全文
posted @ 2020-01-17 15:44 JavaFish 阅读(379) 评论(0) 推荐(0)
摘要: 什么是递归? 维基百科给出了如下定义: 程序调用自身的编程技巧称为递归.递归作为一种算法在程序设计语言中广泛应用。 上面的说法略显官方。简而言之,递归就是自己调用自己,但是这个调用它是有一定条件的,比如: 子问题须与原始问题为同样的事,且更为简单。 调用自身的次数不能太多,否则会造成程序堆栈溢出。 阅读全文
posted @ 2020-01-17 15:43 JavaFish 阅读(399) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人。如有问题,请后台留言,反正我也不会听。 前言 来自不愿意透露姓名的小师弟的投稿。这篇主要讲了,项目中配置了多缓存遇到的坑,以及解决办法。 发现问题 在一次项目实践中有实现多级缓存其中有已经包括了 Shiro 的 Cache ,本以为开启 redis 的缓存是一件很简单的事 阅读全文
posted @ 2020-01-17 15:42 JavaFish 阅读(438) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人 如有问题或建议,请后台留言,我会尽力解决你的问题。 前言 高产似母猪,废话少说,今天刚好读到一篇关于 MySQL 语句底层如何执行的文章,以下是我的理解,分享给你们。 简单的 SQL 语句 上面是一条非常简单的 SQL 查询语句,咋一看是不是觉得很简单,但却不懂它内部的执 阅读全文
posted @ 2020-01-17 15:40 JavaFish 阅读(242) 评论(0) 推荐(0)
摘要: 1、Sping MVC 工作原理 旧文提过,不再赘述。请务必通读以下文章: https://mp.weixin.qq.com/s/z fhmDa9iBwSG6OJx1x5hw 2、 IDEA 创建 web 项目 项目配置: 详细配置见: "https://www.cnblogs.com/shuais 阅读全文
posted @ 2020-01-17 15:35 JavaFish 阅读(224) 评论(0) 推荐(0)
摘要: 继续 Spring 复盘,今天看了下 Spring 的 Bean 生命周期。 1、典型的 Spring 生命周期 在传统的 Java 应用中,bean 的生命周期很简单,使用 Java 关键字 new 进行Bean 的实例化,然后该 Bean 就能够使用了。一旦 bean 不再被使用,则由 Java 阅读全文
posted @ 2020-01-17 15:33 JavaFish 阅读(370) 评论(0) 推荐(0)
摘要: Spring AOP 基础 Java 动态代理实现,阅读文章之前,你最好有以下基础: "java动态代理" 1、什么是 AOP ? AOP(Aspect Oriented Programming),即面向切面编程,它是 OOP(Object Oriented Programming,面向对象编程)的 阅读全文
posted @ 2020-01-17 15:32 JavaFish 阅读(274) 评论(0) 推荐(0)
摘要: 全面进入复习模式,从 Spring 开始。 1、关于 Spring Spring 是一个轻量级的开源框架,是为解决企业应用开发的复杂性而创建的。我很不喜欢这种略显官方的说辞。千人千面,每个人对技术的理解都不一样。而在我的理解中,Spring 的主要就解决了两件事情(当然它还解决了数据访问、远程调用、 阅读全文
posted @ 2020-01-17 15:31 JavaFish 阅读(257) 评论(0) 推荐(0)
摘要: 写之前我首先读了《Spring in action》,之后在网上看了一些关于Spring事务管理的文章,感觉都没有讲全,这里就将书上的和网上关于事务的知识总结一下,参考的文章如下: "https://www.open open.com/lib/view/open1350865116821.html" 阅读全文
posted @ 2020-01-17 15:30 JavaFish 阅读(425) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人 如有问题或建议,请后台留言,我会尽力解决你的问题。 前言 很久不见,因为忙着泡妞,断更了一个月,实在是罪过。废话不多说,最近在工作中遇到了使用 quartz 实现定时任务的需求。写出来分享给大家,权当笔记。 Spring + quartz 实现定时任务 因为在开发中遇到的 阅读全文
posted @ 2020-01-17 15:28 JavaFish 阅读(310) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人 如有问题或建议,请后台留言,我会尽力解决你的问题。 前言 许久不见,最近公众号多了很多在校的师弟师妹们。有很多同学都加了我微信问了一些诸如 [如何自学 Java ]的问题,我都一一解答了,这是大家对我的信任,我非常感谢。你们知道我现在的职业是 java web 开发,可你 阅读全文
posted @ 2020-01-17 15:20 JavaFish 阅读(458) 评论(0) 推荐(0)
摘要: Java 是一门面向对象的语言,在 Java 里面一切都可以看作是一个对象,而 Java 里面所有的对象都默认继承于 Object 类,所以狗哥今天就复习了一遍这个类。 上图看出 Object 一共有 12 个方法,其中 registerNatives() 是由 C 语言实现的,这个不在研究范围内。 阅读全文
posted @ 2020-01-17 15:17 JavaFish 阅读(278) 评论(0) 推荐(0)
摘要: ​ 老读者都知道,我是自学转行到 java 的。那时迫于生存压力,学得比较快,很多知识点仅停留在会用的层面。最近,光会用不知道原理,没什么意思。每次使用时都是机械性的 "熟练使用"。加之一直有回归基础的想法,所以想在业余时间复盘 java 的基础知识。知其然知其所以然是技术人的追求。 说到复盘基础, 阅读全文
posted @ 2020-01-17 15:16 JavaFish 阅读(175) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人。如有问题,请后台留言,反正我也不会听。 最近在复习 Java 相关,回顾了下代理模式。代理模式在 Java 领域很多地方都有应用,它分为静态代理和动态代理,其中 Spring AOP 就是动态代理的典型例子。动态代理又分为接口代理和 cglib (子类代理),结合我的理解 阅读全文
posted @ 2020-01-17 15:14 JavaFish 阅读(1207) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人 如有问题或建议,请后台留言,我会尽力解决你的问题。 前言 这周身体不适请了两天病假,只上了三天班。本来不打算发文,但写文章这件事我很想做好。咬咬牙还是坚持下去。废话少说,今天给你们带来的是如何做好 Java 中的异常处理。 Exception和Error有什么区别? 要做 阅读全文
posted @ 2020-01-17 15:12 JavaFish 阅读(401) 评论(0) 推荐(0)
摘要: 最近很多朋友通过我买了阿里云的服务器,大多是学生,啥也不懂也不知道怎么用。每天微信上一个个问我,浪费我时间。但又不能不帮,谁让我长得帅呢。于是就有了这篇文章。 一、配置服务器 如下图,点击用户中心 如下图,我的已使用过,你们还未使用的提货券,在操作那一列点击使用。 选择配置,地域选离你最近的地方,我 阅读全文
posted @ 2020-01-17 15:09 JavaFish 阅读(537) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人 如有问题或建议,请后台留言,我会尽力解决你的问题。 前言 最近公司某个项目的架构越来越庞大,维护起来非常难受。我主动想领导提出要把这个项目重构在工作中需要把原来的项目重构成微服务架构,因此学习微服务相关知识,在这里记录下来,权当笔记的同时也希望能对你有启发。今天就来聊聊什 阅读全文
posted @ 2020-01-17 15:08 JavaFish 阅读(543) 评论(0) 推荐(1)
摘要: 如上图,做公众号以来,每天都会有读者朋友问我?老哥。有没有 XXX 教程?被问了很多次,每次回答也是心累。所以就干脆写篇文章说下,我平时都上那些网站学习。 1. 极客时间 "https://time.geekbang.org/" 极客时间是一个付费的学习社区。我学习的主要阵地,它的课程质量肯定是没得 阅读全文
posted @ 2020-01-17 15:06 JavaFish 阅读(332) 评论(0) 推荐(0)
摘要: 说到搜索引擎,大家第一时间肯定想到的是某度和 Google 。Google 的搜索质量没得说,但因为某些众所周知的原因, 一般人在国内都只能用某度。然而某度的搜索质量。。。不敢恭维,甚至于一些大 V 都直接怼。前段时间,作家六六就点名怒怼某度及其老板。 类似的新闻数不胜数,不用说,国内对某度早已是天 阅读全文
posted @ 2020-01-17 15:05 JavaFish 阅读(1342) 评论(0) 推荐(0)
摘要: 哈喽,大家好。相信大家都知道金九银十,在人才市场上是指每年的 9 月和 10 月是企业的招聘高峰期。这个时候企业往往有大量招聘需求,求职者在这个时候就找工作无疑是最适合的。需求大,谈工资什么的就更容易达到你的心理预期。想拿高薪就意味着强实力,企业也不是善堂,也不是傻子,不会平白无故给你高薪的。当然这 阅读全文
posted @ 2020-01-17 15:04 JavaFish 阅读(2559) 评论(0) 推荐(1)
摘要: 微信公众号:一个优秀的废人。如有问题,请后台留言,反正我也不会听。 前言 最近更新比较佛系,一方面,工作确实有点忙,但是做的都特么旧项目。09 年的代码都出来了,贼特么恶心。感觉待不久了。另一方面,没想好最近有啥要跟大家分享。刚好今天打开 Chrome ,发现自己一直在用的几个很不错的 Chrome 阅读全文
posted @ 2020-01-17 15:03 JavaFish 阅读(517) 评论(0) 推荐(0)
摘要: 一个读者,也是我的好朋友投稿的一篇关于 SpringBoot 启动原理的文章,才大二就如此优秀,未来可期。 我一直想了解一下 SpirngBoot 的是如何启动的,我想就来写一篇关于 SpirngBoot 启动分析吧。第一次写那么高深的技术话题理解不到位的话也请多多包涵。 源码版本 SpinrgBo 阅读全文
posted @ 2020-01-17 15:00 JavaFish 阅读(211) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人。如有问题,请后台留言,反正我也不会听。 前言 这个月过去两天了,这篇文章才跟大家见面,最近比较累,大家见谅下。下班后闲着无聊看了下 SpringBoot 中的自动配置,把我的理解跟大家说下。 配置文件能写什么? 相信接触过 SpringBoot 的朋友都知道 Spring 阅读全文
posted @ 2020-01-17 14:58 JavaFish 阅读(357) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人。如有问题,请后台留言,反正我也不会听。 前言 休息日闲着无聊看了下 SpringBoot 中的日志实现,把我的理解跟大家说下。 门面模式 说到日志框架不得不说门面模式。门面模式,其核心为外部与一个子系统的通信必须通过一个统一的外观对象进行,使得子系统更易于使用。用一张图来 阅读全文
posted @ 2020-01-17 14:57 JavaFish 阅读(563) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人。如有问题,请后台留言,反正我也不会听。 前言 最近有跳槽的想法,所以故意复习了下 SpringBoot 的相关知识,复习得比较细。其中有些,我感觉是以前忽略掉的东西,比如 @Value 和 @ConfigurationProperties 的区别 。 如何使用 定义两个对 阅读全文
posted @ 2020-01-17 14:56 JavaFish 阅读(411) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人。如有问题,请后台留言,反正我也不会听。 前言 如题,今天介绍下 SpringBoot 是如何整合 MongoDB 的。 MongoDB 简介 MongoDB 是由 C++ 编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,它将数据存储为一个文档,数据结构由键 阅读全文
posted @ 2020-01-17 11:51 JavaFish 阅读(776) 评论(0) 推荐(0)
摘要: 微信公众号:一个优秀的废人。如有问题,请后台留言,反正我也不会听。 前言 昨天那篇介绍了 WebSocket 实现广播,也即服务器端有消息时,将消息发送给所有连接了当前 endpoint 的浏览器。但这无法解决消息由谁发送,又由谁接收的问题。所以,今天写一篇实现一对一的聊天室。 今天这一篇建立在昨天 阅读全文
posted @ 2020-01-17 11:48 JavaFish 阅读(733) 评论(0) 推荐(1)
摘要: 前言 如题,今天介绍的是 SpringBoot 整合 WebSocket 实现广播消息。 什么是 WebSocket ? WebSocket 为浏览器和服务器提供了双工异步通信的功能,即浏览器可以向服务器发送信息,反之也成立。 WebSocket 是通过一个 socket 来实现双工异步通信能力的, 阅读全文
posted @ 2020-01-17 11:47 JavaFish 阅读(975) 评论(0) 推荐(0)
摘要: 一、依赖原则 假设,在 模块中, 的版本是 ,在 模块中,它虽然继承于 模块,但是它排除了在 模块中继承 的版本,自己引入了 的 版本。 此时,相对于 而言, 的依赖路径是 ,长度是 3;而 的依赖路径是 长度是 2。 所以 继承的是 模块中的 log 版本,而不是 中的,这叫 路径优先原则(谁路径 阅读全文
posted @ 2020-01-17 11:26 JavaFish 阅读(723) 评论(0) 推荐(0)
摘要: 一、什么是 Maven? 是一个项目管理工具,它的本质是一个 项目对象模型(POM) ,体现在配置中就是我们常见的 文件,而这个 文件就是 的核心,它管理了整个项目的生命周期。它主要做两件事: 项目构建:对项目进行编译、打包、测试、部署以及上传到私服仓库等 依赖管理: 诞生时就提出了一个仓库的概念, 阅读全文
posted @ 2020-01-17 11:24 JavaFish 阅读(697) 评论(0) 推荐(0)
摘要: 为跳槽面试做准备,今天开始进入 Java 基础的复习。希望基础不好的同学看完这篇文章,能掌握泛型,而基础好的同学权当复习,希望看完这篇文章能够起一点你的青涩记忆。 一、什么是 IO 流? 想象一个场景:我们在电脑上编辑文件,可以保存到硬盘上,也可以拷贝到 U 盘中。那这个看似简单的过程,背后其实是数 阅读全文
posted @ 2020-01-17 11:23 JavaFish 阅读(509) 评论(0) 推荐(0)
摘要: 为跳槽面试做准备,今天开始进入 Java 基础的复习。希望基础不好的同学看完这篇文章,能掌握泛型,而基础好的同学权当复习,希望看完这篇文章能够起一点你的青涩记忆。 一、什么是 File 类? java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。 二、 阅读全文
posted @ 2020-01-17 11:22 JavaFish 阅读(268) 评论(0) 推荐(0)
摘要: 前言 为跳槽面试做准备,今天开始进入 Java 基础的复习。希望基础不好的同学看完这篇文章,能掌握 lambda 表达式,而基础好的同学权当复习,希望看完这篇文章能够起一点你的青涩记忆。 一、什么是 lambda 表达式 Java8 是我们使用最广泛的稳定 Java 版本,lambda 就是其中最引 阅读全文
posted @ 2020-01-17 11:21 JavaFish 阅读(423) 评论(0) 推荐(1)
摘要: 前言 为跳槽面试做准备,今天开始进入 Java 基础的复习。希望基础不好的同学看完这篇文章,能掌握泛型,而基础好的同学权当复习,希望看完这篇文章能够起一点你的青涩记忆。 一、什么是泛型 泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解 阅读全文
posted @ 2020-01-17 11:19 JavaFish 阅读(565) 评论(0) 推荐(2)