05 2020 档案
摘要:第一章 代理模式 了解AOP之前,首先了解代理模式。 代理模式指的是:通过代理类为原始类添加额外功能。 代理模式的好处:利于原始类的维护。 对于通用的额外功能,比如日志、事务等,如果硬编码在Service中,那么当额外功能发生了改变,所有Service都要修改,不利于维护。 代理的本质是构造一个代理
阅读全文
摘要:场景 docker pull https://test.example.com仓库中的镜像,无法成功,错误为:x509: certificate signed by unknown authority 解决方案 vim /etc/docker/daemon.json ## 添加"insecure-r
阅读全文
摘要:场景 在项目中,我们配置nginx反向代理分别指向kong服务端口和管理端口,但是我们发现在使用IP Restriction插件时,kong只能获取到nginx代理的地址。 server { server_name kong_proxy; listen 0.0.0.0:8888; location
阅读全文
摘要:什么是mybatisplus? MybatisPlus是一款优秀的国产持久层框架,基于Mybatis实现了基础SQL和CRUD操作的封装,帮助开发者简化数据库操作。MybatisPlus基于Mybatis实现了功能的扩展和增强,同时兼容现有的Mybatis操作。 基础准备 案例基于SpringBoo
阅读全文
摘要:什么是工厂设计模式 解耦的本质在于隔离变化 耦合与解耦合本质在于对 变化 的处理。 通常如果将接口的实现类硬编码在程序中,就会使得 变化 散落在程序各处,使得修改会产生连锁反应。 但代码不能完全解耦,如果代码间完全没有关联那程序也就无法正常运行。 所以,解耦的本质在于:隔离变化。 分析这段代码: 首
阅读全文
摘要:概述 Mybatis前身是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code并且改命为MyBatis,2013年11月迁移到Github。 MyBatis是一个实现了数据持久化的开源框架,简单理解就是对JDB
阅读全文
摘要:本文对容器部署ElasticStack7.7.0系列软件做一次记录 ElasticSearch7.7.0 Kibana7.7.0 Logstash7.7.0
阅读全文
摘要:当需要关闭资源时,通常会使用try finally语句 java7新增了tryWithResource语句专门用于处理资源关闭的情况,基本结构为:try(){} 括号内用于初始化资源,资源需要实现java.lang.AutoCloseable接口,即实现close()方法。 括号内可以初始化多个资源
阅读全文
摘要:如果要入门大数据,kafka算是一个很好的入口。kafka作为数据管道和存储设施在大数据系统中无所不在,本文基于官方文档对kafka进行一次学习和梳理。 介绍 消息系统 Kafka是一个消息系统,它是分布式的,大吞吐量的消息系统。 整合了点对点和发布订阅两种模式 传统的消息系统如ActiveMQ通常
阅读全文
摘要:本文介绍使用 对Controller抛出的异常进行统一拦截和处理。 定义返回格式 首先定义一个统一的返回格式,所有的异常最终都按照统一格式返回给前端。 定义状态码 不同的异常对应不同的返回状态码 首先将状态码集中在配置文件中进行管理 properties的编码格式需要配置,否则可能出现中文乱码 ID
阅读全文
摘要:在Java体系中,Bean Validation 2.0(JSR380)是当前的数据校验规范,Hibernate Validator是JSR380的参考实现,也是事实标准。SpringBoot整合了Hibernator Validator作为数据校验的实现。 引入依赖 已经包含了hibernate
阅读全文
摘要:介绍 Java的数据类型分为“基本数据类型”和“引用数据类型”两大类。 Java中存在8种基本数据类型,基本数据类型不具备对象特征,无法对象化交互。 每种基本数据类型都有对应的包装类,包装类和其他的Class相同,都继承自Object类型。 如何选择使用什么类型 在两种情况下选择使用包装类: 1.
阅读全文
摘要:弹性盒子 使用弹性布局,首先要将父盒子定义为弹性盒子。 display: flex display: inline flex 行级弹性盒子,类似inline block 弹性元素 弹性盒子内的元素称为”弹性元素“。 弹性布局实际上就是要对弹性元素的排列做各种设置。 排列方向 flex directi
阅读全文

浙公网安备 33010602011771号