自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小鱼吃猫

徘徊在小白与大佬之间二十年的一个码农

  • 博客(89)
  • 收藏
  • 关注

原创 手把手教你安装Hadoop集群

手把手教你安装Hadoop集群

2022-10-03 13:39:13 1861

原创 不吹牛X,我真的干掉了if-else

不吹牛X,我真的干掉了if-else如何才能有很高的扩展性?常规方式如何解决?思考如何干掉if-else?使用策略模式来解决if-else的问题尝试使用Spring来配合策略模式总结:

2020-05-18 23:11:09 7780 7

原创 试试Nacos作注册中心和配置中心,爱不释手的感觉

文章目录我觉得Nacos用起来还不错下载与安装Nacos简介Nacos作为注册中心Nacos作为分布式配置中心pom.xml引入下边依赖application.yml中加入如下配置内容添加一个bootstrap.ymlController中的接口Nacos中的几个空间概念:新建一个配置文件试试Nacos的配置文件持久化我觉得Nacos用起来还不错在使用SpringCloud做分布式微服务架构时...

2020-03-25 00:22:36 1209

原创 在SpringBoot中使用AOP切面编程

如果有对SpringAOP不太懂的小伙伴可以查看我之前的Spring学习系列博客SpringBoot的出现,大大地降低了开发者使用Spring的门槛,我们不再需要去做更多的配置,而是关注于我们的业务代码本身,在SpringBoot中使用AOP有两种方式:一、使用原生的SpringAOP(不是很推荐,但这是最基本的应用)基原理就是之前写的SpringAOP在web应用中的使用的第三种方式,使用...

2019-12-29 21:43:43 1757

原创 MapperStruct实现类为空

MapperStruct实现类为空

2023-10-21 22:30:29 421

原创 198/213动态规划之打家劫舍系列

这两天在学习的时候,发现有个打家劫舍的题目,有意思的很,分享给大家。

2023-09-07 12:14:14 110

原创 使用Docker部署SprignBoot项目

直接替换宿主机下的/home/xxxx目录下的app.jar包,然后重启xxxx容器就可以了,不需要每次都进行镜像构建。更多内容,jhacker.cn。

2023-05-06 12:20:08 118

原创 Hadoop生态系统——HiveQL操作实战

大数据学习系列之HiveQL的操作实战

2022-10-19 13:44:40 862 1

原创 Hive查询语句——HiveQL学习

Hive查询语句——HiveQL学习更多Hive仓库的安装[Hadoop生态系统—数据仓库Hive的安装](https://jhacker.cn/2022/hive01)

2022-10-18 16:34:52 1065

原创 Hadoop生态系统—数据仓库Hive的安装

Hive最初是Facebook开发的一款用来SQL分析的应用,它是建立在Hadoop文件系统上的数据仓库,能够对存储在HDFS中的数据进行数据提取、转换和加载(ETL),这是一种可以存储、查询、分析存储在Hadoop中的大规模数据的机制。Hive定义了简单的类SQL查询语言,简称HQL。但Hive并不是一个数据库,它只是提供了和数据库相类似的查询语言。其实他是用来执行简化MapReduce操作的,可以解决很多MapReduce解决起来比较麻烦的事。

2022-10-17 15:00:13 1009

原创 Linux 下设置定时任务

这里不能像vi或者vim一样用:wq ,需要按ctrl+o保存,然后Enter,然后按ctrl+x退出。如果你的cron格式错误,会有提示的。​ 每隔4个小时执行一个脚本,命令如下。

2022-10-16 17:54:37 3376

原创 ElementUI 表格自适应高度终极解决方案

ElementUI 表格自适应高度终极解决方案直接上代码,这样不管在表格上边有任何组件,都可以解决。下边的这个50高度是用来放其他组件的,比如常见的分页组件,如果你不需要的话,可以不用放。

2022-03-13 01:39:50 1489

原创 SpringBoot与单元测试JUnit的结合

有些人认为,写单元测试就是在浪费时间 ,写完代码,依然还是能够进行测试的。但是,还是建议写单元测试的,可以让你的条理更加清晰,而且当某个功能出现问题时,可能通过单元测试很容易的定位和解决问题。本文主要总结下在Spring及SpringBoot项目中,使用单元测试时的方法。将JUnit4和JUnit5对比着来写,因为我发现我身边的同事经常搞不明白要怎么用。Juint版本说明这里主要说明下它们...

2020-04-24 00:36:00 75

原创 为什么你身边的同事不喜欢写单元测试了?

在Juint版本说明Junit4Junit5Junit5常见注解及其用法在普通Maven项目中使用Junit在Spring项目中使用JunitJunit4Junit5在SpringBoot项目中使用JunitJunit4Junit5有些人认为,写单元测试就是在浪费时间 ,写完代码,依然还是能够进行测试的。但是,还是建议写单元测试的,可以让你的条理更加清晰,而且当某个功能出现问题时,可能通过单元测...

2020-04-23 22:04:03 1195

原创 SpringBoot项目全局异常处理与自定义404页面

文章目录一、错误处理原理分析二、进行错误处理1. 使用SpringBoot的自动配置原理进行异常处理1)、返回一个错误页面,如404、500等。有模板引擎的情况(可以用于渲染页面)没有模板引擎的情况2)、返回对应的json串3)、自定义页面返回信息2. 使用AOP的异常通知进行处理(推荐)3. 两种方法对比:一、错误处理原理分析使用SpringBoot创建的web项目中,当我们请求的页面不存在...

2020-04-23 01:11:34 4244

原创 SpringBoot全局异常处理与定制404页面

一、错误处理原理分析使用SpringBoot创建的web项目中,当我们请求的页面不存在(http状态码为404),或者器发生异常(http状态码一般为500)时,SpringBoot就会给我们返回错误信息。也就是说,在SpringBoot的web项目中,会自动创建一个/error的错误接口,来返回错误信息。但是针对不同的访问方式,会有以下两种不同的返回信息。这主要取决于你访问时的http头部...

2020-04-23 00:16:00 119

原创 在SpringBoot中使用SpringSecurity

文章目录提出一个需求解决方案:使用SpringSecurity进行解决SpringSecurity和SpringBoot结合1. 首先在pom.xml中引入依赖:2. 配置用户角色和接口的权限关系3. 配置用户名和密码4.进行测试总结:本教程是基于SpringMVC而创建的,不适用于WebFlux。(如果你不知道这两者,可以忽略这句提示)提出一个需求所有的技术是为了解决实际问题而出现的,...

2020-04-16 01:36:45 1110

原创 Gateway完全入门指南

什么是路由网关?它存在意义又何在?在微服务中,我们会有很多个微服务,但是客户端只有一个,它有调用我们远程接口的时候,就要使用不同的地址,比如下边三个微服务(也是本项目中出现的用到的三个微服务,获取代码地址见文末)服务名项目名示例接口调用地址商品模块gateway-goods-7001http://localhost:7001/goods/main订单模块gat...

2020-04-14 23:50:00 244

原创 Gateway中使用SpringSecurity进行网关鉴权与权限控制

上一篇文章:Gateway使用入门GateWay作为网关路由是挡在了我们的系统最前边,进行动态路由配置和转发。那么我们就可以在网关层进行网关鉴权。https://cloud.spring.io/spring-cloud-gateway/2.2.x/reference/html/Gateway过滤器的介绍之前说过GateWay的组件中有Filter(过滤器)这一功能,就是web开发的三大组...

2020-04-14 23:48:00 290

原创 使用Spring管理数据库事务

使用Spring管理事务一、事务的一些基本概念事务的属性(ACID):白话“事务”事务的隔离级别事务的传播类型二、Spring中解决事务问题1. 声明式事务2. 编程式事务在整个JavaWeb项目开发中,事务是用来开发可靠性网络应用程序的最关键部分。当应用程序与后端资源进行交互时,就会用到事务,这里的后端资源包括数据库、MQ、ERP等。而数据库事务是最常见的类型,而我们常说的事务也就是狭义上的...

2020-04-06 01:46:34 1093

原创 Nacos作为微服务注册中心,爱不释手的感觉

我觉得Nacos用起来还不错在使用SpringCloud做分布式微服务架构时,注册中心是必不可少的一个组件。目前可以用的主要有:Eureka、Consul、Zookeeper。今天,我们就来说一下Alibaba的Nacos怎么样?下载与安装下载地址https://github.com/alibaba/nacos/releases安装:Windows 下载解压后(.zip),直...

2020-03-25 00:25:00 59

原创 SpringCloud之Hystrix服务降级熔断完全入门指南

Hystrix是什么?Hystrix是由Netflix开源的一个服务隔离组件,通过服务隔离来避免由于依赖延迟、异常,引起资源耗尽导致系统不可用的解决方案。这说的有点儿太官方了,它的功能主要有以下三个:服务降级​ SpringCloud是通过HTTP Rest的方式在“微服务”之间进行调用的,所以每一个“微服务”都是一个web项目。既然它是一个web项目,它就就有可能会发生错误,这个...

2020-03-20 01:20:49 976

原创 SpringCloud之Hystrix服务降级入门全攻略

理论知识Hystrix是什么?Hystrix是由Netflix开源的一个服务隔离组件,通过服务隔离来避免由于依赖延迟、异常,引起资源耗尽导致系统不可用的解决方案。这说的有点儿太官方了,它的功能主要有以下三个:服务降级​ SpringCloud是通过HTTP Rest的方式在“微服务”之间进行调用的,所以每一个“微服务”都是一个web项目。既然它是一个web项目,它就就有可能会发...

2020-03-20 01:14:00 75

原创 Eureka停更了?试试Zookpper和Consul

在Spring Cloud Netflix中使用Eureak作为注册中心,但是Eureka2.0停止更新,Eureka1.0 进入了维护状态。就像win7一样,同样可以用,但是官方对于新出现的问题并不能及时修复,所以我们就需要使用替代品。目前可用的注册中心替代品主要有:Zookeeper、Consul、Nacos等,这里主要讲前两个,Nacos是Spring Cloud Alilibaba中的组件...

2020-03-13 00:46:48 3703 3

原创 在SpringCloud中使用Feign进行服务访问

在SpringCloud中使用Feign进行服务的访问之前已经说过了SpringCloud作为“分布式微服务”的解决方案时的大概原理和方法了。就是一个个web应用之间的访问,之前的访问方式有两种:使用RestTemplate这个封装好的类,使用ip+端口+服务地址进行访问,这是最简单的访问方式了@GetMapping("demo1/consumer/hello/{id}")public...

2020-03-09 00:44:37 732

原创 使用Feign进行服务访问

在SpringCloud中使用Feign进行服务的访问之前已经说过了SpringCloud作为“分布式微服务”的解决方案时的大概原理和方法了。就是一个个web应用之间的访问,之前的访问方式有两种:使用RestTemplate这个封装好的类,使用ip+端口+服务地址进行访问,这是最简单的访问方式了@GetMapping("demo1/consumer/hello/{id}")publi...

2020-03-09 00:43:00 724

原创 SpringCloud学习之—Eureka集群搭建

Eureka集群的搭建上次说过了在SpringCloud应用中使用Eureka注册中心,用来对服务提供者进行服务注册与发现,但同时,它也是一个“微服务”,单个应用使用空间有限,因此和zookeeper一样,它也需要搭建集群(Cluster)。搭建Eureka集群的原理就是创建多个eureka应用(端口不同),然后将所有的注册中心的地址联合到一起。下边就以创建三个集群为例一、将之前的创建的eu...

2020-02-27 02:00:01 291

原创 SpringCloud之Ribbon负载均衡的入门操作

使用Ribbon进行负载均衡在使用Ribbon之前,我们先想一个之前的问题,之前我们将服务提供者注册进了eureka注册中心,但是在消费者端,我们还是使用的restTemplate调用的时候,其中写的还是http://localhost:8001这样的调用方式,是不是有一些不妥呢?是不是应用像dubbo那样,使用服务名进行调用呢?不然,我们使用注册中心有什么用呢?好的呢,我们先保留这个思考 。...

2020-02-27 01:58:18 303

原创 SpringCloud之eureka注册中心入门

eureka注册中心一、基本概念SpringCloud封装 了Netflix公司的eureka作为自己微服务的注册中心。这个注册中心和dubbo中的zookeeper很相似,简单来说,只要你可以将你的”微服务“模块注册到注册中心,就可以供其他服务调用,一般来说,只有provider会注册到eureka,consumer也可以注册,但是并不建议这么做。eureka的架构图如下:二、在Sp...

2020-02-24 23:39:13 278

原创 SpringCloud入门学习

我相信,如果小伙伴们能来到这里,肯定对微服务有一定的认识。我们之前创建web项目的时候,常见的有两种方式:1).创建一个war包,然后放在servlet容器中运行(比如Tomcat等);2).使用SpringBoot创建一个jar包运行,这也是使用了内嵌式的servlet容器。这么做的好处是:开发布署方便,直接放在tomcat的webapp目录下或者使用java -jar xxx.jar ...

2020-02-24 11:43:54 1030

原创 策略模式的学习之道

策略模式1.需求分析:一个考试系统,当考生的成绩通过后(成绩大于60分)会通过各种方式通知用户。通知方式有:APP消息推送、短信、邮件、站内消息四种方式;但是每种方式是否进行通知是要进行在表中配置的;假设我们从表中查询后的对象如下:/** * 成绩对象 */public class Score { //成绩 private int score; /...

2020-02-18 23:44:02 640

原创 打开UML类图的正确姿势

UML(Unified Modeling Language) 统一建模语言,又称标准建模语言。是用来对软件密集系统进行可视化建模的一种语言。UML的定义包括UML语义和UML表示法两个元素。UML是在开发阶段,说明、可视化、构建和书写一个面向对象软件密集系统的制品的开放方法。最佳的应用是工程实践,对大规模,复杂系统进行建模方面,特别是在软件架构层次,已经被验证有效。统一建模语言(UML)是一种模型...

2020-02-16 23:53:37 3392

原创 在Spring中使用嵌入式数据库-H2

Spring3以后开始支持嵌入式数据库,嵌入式数据库目前在市面上有好多种,HSQL,DERBY,H2...今天就主要讲一下h2的使用对于一个数据库产品来说,主要就是如何存储数据和读取数据了。所谓嵌入式就是直接运行在项目中,不需要安装额外的产品。说白了就是一个jar包,可以随项目启动和结束而结束,它主要有以下特点:优点:小而简,但是可以存储的数据还是很大,大概有512G左右;不用...

2020-02-05 03:17:28 571

原创 Jdk8中Stream流的使用,让你脱离for循环

学习要求:知道一点儿函数式接口和Lambda表达式的基础知识,有利于更好的学习。1.先体验一下Stream的好处需求:给你一个ArrayList用来保存学生的成绩,让你打印出其中大于60的成绩。 public static void main(String[] args) { ArrayList<Integer> arrList = new ArrayList&l...

2020-02-05 03:14:39 3587

原创 重申一遍,在Java中只有值传递,没有引用传递

一、基本概念:值传递和引用传递是指在方法调用中,由调用者传递过来的参数是一个具体的值还是一个地址引用。我发现小伙伴认为Java中存在引用传递的最大原因就是对上边概念中的这个“地址”有误解,它指的是栈中变量的引用,并不是指堆中对象的地址。值传递:顾名思义,就是由调用方法的地方将实际的值传到方法中。也就是说,我将我的值给你了,你想怎么改就怎么改,但是你的任何改变都不会影响我自身。引用传递: 引...

2020-01-30 13:42:24 938

原创 在Spring中使用嵌入式数据库-H2

Spring3以后开始支持嵌入式数据库,嵌入式数据库目前在市面上有好多种,HSQL,DERBY,H2...今天就主要讲一下h2的使用对于一个数据库产品来说,主要就是如何存储数据和读取数据了。所谓嵌入式就是直接运行在项目中,不需要安装额外的产品。说白了就是一个jar包,可以随项目启动和结束而结束,它主要有以下特点:优点:小而简,但是可以存储的数据还是很大,大概有512G左右;不用...

2020-01-20 00:50:35 741

原创 回溯算法之八皇后问题

一、什么是回溯算法?我们肯定都玩过迷宫游戏吧,比较复杂的迷宫,肯定是不可能第一遍就直接过了,只能一步一步地进行尝试。当走到一个死胡同时,只能退回到上一个分岔口进行重新选择。数独游戏也是这样的,对于一个不确定的方格,我们就会先将这个方格可能出现的问题记录下来,一个一个地尝试,直到得到正确解。有着“通用解”称呼所以,回溯算法就是类似于枚举的算法,将这一步的所以可能性一个一个地进行尝试。上边迷宫中的分...

2020-01-12 12:35:31 939

原创 回溯算法之八皇后问题

一、什么是回溯算法?我们肯定都玩过迷宫游戏吧,比较复杂的迷宫,肯定是不可能第一遍就直接过了,只能一步一步地进行尝试。当走到一个死胡同时,只能退回到上一个分岔口进行重新选择。数独游戏也是这样的,对于一个不确定的方格,我们就会先将这个方格可能出现的问题记录下来,一个一个地尝试,直到得到正确解。有着“通用解”称呼所以,回溯算法就是类似于枚举的算法,将这一步的所以可能性一个一个地进行尝试。上边迷宫中的分...

2020-01-12 02:55:40 491 1

原创 数据结构之递归案例一

什么是递归?顾名思义,所谓递归就是一个函数(或方法)自己调用自己,最简的如下:public void text() { text();}就是这么简单,但是一定要给这个递归函数一个出口,不然就会无限循环下去,最后的结果就是OutOfMemory(内存溢出),如果是在main函数中调用的话,就会出现栈空间已满的错误。如何给一个递归的方法写一个出口呢?只要在递归的过程中,有...

2020-01-09 00:01:01 1050

原创 Java数据结构之链表的原理及LinkedList的部分源码剖析

一、为什么要学习数据结构?做为一名程序员,不管你是用什么编程语言,数据结构是取底层的东西。就相当于盖楼的地基一样,地基做不好,上边再好也没有用。在高级语言中,一般会对这些基础的数据结构进行封装,我们学要学习这些基础的东西吗?当然是的,只有知道这些基础的东西,我们才能更好地使用语言封装好的api。举个最简单的例子,在Java中,List的实现类有ArrayList,LinkedList,Ve...

2019-12-26 23:23:03 170

空空如也

空空如也

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

TA关注的人

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