自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 资源 (3)
  • 收藏
  • 关注

原创 java全栈学习路线

首先呢学习JAVA要拥有一个好的学习方向和学习路线,接下啦分7个阶段给大家总结!

2020-02-19 10:34:52 541

原创 Spring 事务、隔离性、传播级别,一网打尽

数据库事务是指作为单个逻辑工作单元执行的一系列操作,这些操作要么一起成功,要么一起失败,是一个不可分割的工作单元。在我们日常工作中,涉及到事务的场景非常多,一个 service 中往往需要调用不同的 dao 层方法,这些方法要么同时成功要么同时失败,我们需要在 service 层确保这一点。说到事务最典型的案例就是转账了:原子性(Atomicity): 一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)

2022-06-04 23:41:10 450

原创 kafka原理+基本命令+集群搭建教程

⼀、Kafka介绍Kafka是最初由Linkedin公司开发,是⼀个分布式、⽀持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最⼤的特性就是可以实时的处理⼤量数据以满⾜各种需求场景:⽐如基于hadoop的批处理系统、低延迟的实时系统、Storm/Spark流式处理引擎,web/nginx⽇志、访问⽇志,消息服务等等,⽤scala语⾔编写,Linkedin于2010年贡献给了Apache基⾦会并成为顶级开源 项⽬。1.Kafka的使⽤场景

2022-01-15 11:31:59 1589

原创 zookeeper教程

文章目录⼀、Zookeeper介绍1.什么是Zookeeper2.Zookeeper的应⽤场景⼆、搭建Zookeeper服务器1.zoo.cfg 配置⽂件说明2.Zookeeper服务器的操作命令三、Zookeeper内部的数据模型1.zk是如何保存数据的2.zk中的znode是什么样的结构3.zk中节点znode的类型4.zk的数据持久化四、Zookeeper客户端(zkCli)的使⽤1.多节点类型创建2.查询节点3.删除节点4.权限设置五、Curator客户端的使⽤1.Curator介绍1.引⼊Cura

2022-01-08 21:22:48 1596

原创 kafka安装使用+工具连接

一、下载工具包Kafka:https://kafka.apache.org/downloadsKafka ToolsK:二、kafka安装启动1、将安装包上穿到linux上2、解压安装包tar -zxvf kafka_2.13-3.0.0.tgz3、开放防火墙端口号firewall-cmd --permanent --zone=public --add-port=2181/tcpfirewall-cmd --permanent --zone=public --add-port=90

2021-12-12 11:06:40 5387

原创 linux上安装redis及远程连接(一)

文章目录一、redis的安装1、获取安装包2、解压下载的安装包3、安装redis4、遇到的问题1、make之后报错重装2、make前提条件3、make MALLOC=libc4、gcc全套,没有安装完全导致报错二、redis的启动1、设置后台守护进程运行2、启动redis服务:3、启动客户端4、设置开机自动启一、redis的安装1、获取安装包可以通过wget直接获取,也可以去官网下载,通过远程传输工具,传输到linux上。redis官网[root@localhost local]# wget ht

2021-11-18 23:43:34 739 1

原创 Spring注解@RequestParam与 @RequestBody详细介绍

一、@RequestParam 和 @RequestBody区别。疑问: 在使用postman工具测试api接口的时候,如何使用 json 字符串传值呢,而不是使用 x-www-form-urlencoded 类型,毕竟通过 key-value 传值是有局限性的。假如我要测试批量插入数据的接口呢,使用 x-www-form-urlencoded 方法根本就不适用于这种场景。那么如何通过postman工具使用json字符串传值呢,这里就引申出来了spring的两个注解:@RequestParam

2021-04-14 16:16:34 6846 2

原创 Spring5框架核心IOC,AOP,SpringWebFlux等新特性

一、Spring概念1、Sprig是轻量级,开源的javaEE框架。2、Spring可以解决企业应用开发的复杂性。3、IOC:控制反转,把创建对象过程交给Spring进行管理。4、AOP:面向切面,不修改源码代码的情况下,进行功能增加。5、方便解耦,简化开发,AOP编码支持,方便程序测试,方便和其他框架整合,方便进行事务操作,降低API开发难度。二、IOC(控制反转)1、IOC底层原理控制反转,把创建对象过程交给Spring进行管理。将对象交给Spring管理,为了降低耦合度。用到的技术

2021-02-01 23:40:48 541

原创 java反射,动态代理,策略设计模式

一、java反射可以动态的获取类中的任何方法,属性public static void testReflex() throws ClassNotFoundException { String name = "GaoWenZhong"; // 1、对象.getClass()获取类 Class<? extends String> nameClass = name.getClass(); // 2、 Class.forName获取类

2021-01-26 21:53:49 243

原创 springboot+mybatis+druid实现mysql主从读写分离(三)

一、如何自定义注解1、使用格式修饰符访问修饰符必须为public,不写默认为public关键字关键字为@interface;注解名称自定义名称注解类型元素注解类型元素是注解中内容,可以理解成自定义接口的实现部分;@Target({ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic @interface DataSourceSign { /** * 切换数据

2020-11-18 18:33:26 603

原创 redis的java基本操作(二)

文章目录一、SpringDataRedis简介1、Redis2、Jedis3、Spring Data Redis二、RedisTemplate中API使用1、pom.xml依赖2、配置文件3、RedisTemplate的直接方法三、redis的五大类型操作1、ValueOperations:简单K-V操作2、HashOperations:针对map类型的数据操作3、ListOperations:针对list类型的数据操作2、SetOperations:set类型数据操作3、ZSetOperations:zs

2020-11-16 22:52:32 371

原创 Mysql主从同步读写分离实战(二)

文章目录一、介绍二、VM上装两台Centos7系统三、主从配置1、配置master主服务器配置1.1、修改mysql配置文件1.2、创建从服务器的用户权限1.3、重启msyql服务1.4、查看master服务器状态2、配置Slave从服务器配置2.1、修改mysql配置文件2.2、重启mysql服务2.3、连接master主服务2.4、查看slave状态四、测试实践1、在master创建tb_test表2、查看slave从库五、出错问题解决1、网络问题2、 解决错误3、主从同步问题一、介绍介绍是参考这里

2020-11-16 22:16:04 366

原创 Xshell远程连接问题(二)

一、VM上安装CentOS虚拟机1、CentOS国内镜像下载2、安装VM3、在VM上安装CentOS1、查看网络是否可用ifconfig提示命令找不到 command not found问题解决:1、查看环境变量ifconfig的命令在路径、/sbin路径下[root@localhost ~]# echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin查找/sbin下面没有ifconfig命令

2020-11-16 22:07:08 320

原创 ElasticSearch+SpringBoot聚合、分组、排序、分页、10000条查询限制及遇到的问题

一、SQL转换SelectFromWhere and or notGroup byHavingOrder by1、单条件查询Select from book where name = “小明”精确匹配QueryBuilders.matchQuery("name",”小明”);模糊查询//1.常用的字符串查询 Select from book where name like “%小%”QueryBuilders.queryStringQuery("fieldValue"

2020-09-28 18:10:53 7803

原创 redis性能、并发、数据库双写一致性问题

文章目录一、程序运行读取缓存流程二、redis、数据库双写一致性1、先更新数据库、在更新缓存2、先删除缓存、在更新数据库3、先更新数据库、在删除缓存4、什么是延时双删除?三、最终解决数据一致性问题1、在业务代码中消息队列2、使用消息队列+订阅一、程序运行读取缓存流程获取缓存流程及访问数据库流程。对于先更新数据库、还是先更新缓存、后删除缓存之间的顺序存在不同,不同的顺序会出现不同的情况。这些问题考虑的出发点的来源于redis、数据库双写一致性,和读取的数据是否准确。二、redis、数据库双写一致性

2020-09-23 21:24:23 334

原创 SVN服务得搭建,Tortoise客户端使用,集成IDEA的具体使用

文章目录一、下载资源二、安装软件1、安装svn服务端2、安装TortoiseSVn小乌龟客户端三、具体操作使用1、svn服务端的使用1、服务端信息介绍2、右键创建用户3、创建项目2、TortoiseSVN小乌龟常规操作1、从服务端拉取项目,资料2、导入项目3、添加或者更新4、查看日志5、版本回滚6、标记版本3、IDEA集成Svn**1、首先配置svn启动路径****2、在IDEA中拉取项目:**一、下载资源1、首先下载VisualSvn-Server服务端2、然后在下载TortoiseSvn小乌龟客户

2020-09-13 20:03:29 307

原创 logback日志具体配置和使用

文章目录一、logback介绍二、取代log4j的理由三、logback的配置及使用1、首先你要使用logback,需要导入依赖2、logback默认配置3、lobback.xml常用配置详解1、logback的配置文件2、根节点configuration,包含下面三个属性:3、子节点appender四、logback的日志名称问题一、logback介绍logback的详细介绍与具体使用logback中文官网使用介绍logback-core:其它两个模块的基础模块logback-classic:l

2020-08-26 23:41:11 506

原创 SpringBoot+vue项目部署整合

文章目录一、pom文件中的build1、BaseBuild2、Resources二、vue项目打包1、可以对应项目下的运行名称2、IDEA打包方式三、整合部署1、dist文件处理2、资源处理1、资源解析问题:2、资源拦截问题3、打包后台SpringBoot项目四、bat脚本基本知识1、@echo2、pause3、::4、set5、call6、copy一、pom文件中的buildMavne官方文件解读build1、BaseBuildPOM中两个build元素之间的基本元素集。<build&gt

2020-08-23 18:14:13 8683 9

原创 Linux虚拟机安装及常用命令(一)

文章目录一、Linux的安装1、vm的安装2、在vm上安装linux操作系统2、镜像下载地址3、创建虚拟机4、设置虚拟机名称、以及存放路径5、选择镜像路径、设置网络连接模式6、开启虚拟机,进入安装linux7、Lnux基本设置8、安装完成进入命令行。二、Linux常用命令1、目录操作2、文件处理3、权限管理4、文件搜索5、帮助命令6、用户命令管理7、压缩命令8、网络命令9、关机重启10、rpm命令管理11、yum在线管理12、其他命令一、Linux的安装1、vm的安装首先安装VM、直接百度搜索就行了,

2020-06-24 16:04:16 5516 2

原创 Linux上安装MySQL(一)

文章目录一、安装mysql-5.7.30-linux1、下载mysql-5.7.30-linux2、利用 xftp 传输工具3、解压mysql4、安装mysql5、初始化数据库6、启动mysql,并更改root密码7、修改密码二、在安装过程中可能出现的错误1、设置密码问题2、权限不足3、远程连接不成功一、安装mysql-5.7.30-linux1、下载mysql-5.7.30-linuxMySQL官网下载2、利用 xftp 传输工具安装 xftp 传输工具将安装包传入到linux系统下的opt文件

2020-06-24 15:59:04 496

原创 Git与GitHub基本操作及项目开发流程

一、git的简介和安装以下设计到了git的所有基本操作,以及工作中的开发流程,详细资料请下载Git与GitHub操作git下载地址1、下载安装就行了,下一步、下一步2、注意:选择Git命令的执行环境,这里推荐选择第一个,就是单独用户Git自己的命令行窗口。不推荐和windows的命令行窗口混用。2、HTTPS传输: 使用SSL传输协议3、第一个选项:如果是跨平台项目,在windows系统安装,选择;第二个选项:如果是跨平台项目,在Unix系统安装,选择;第三个选项:非跨平台项目,选择。

2020-06-18 11:28:43 418

原创 Lamdba(表达式,方法应用,聚合操作)

文章目录一、Lambda表达式1、普通方法2、匿名类方式3、Lambda方式4、 从匿名类演变成Lambda表达式5、匿名方法6、Lambda的弊端二、lambda --> 方法引用1、引用静态方法2、引用对象方法3、引用构造器(难理解)三、lambda - > java集合的聚合操作1、传统遍历和聚合操作遍历2、 Stream和管道的概念3、管道源4、中间操作5、结束操作一、Lambda表达式1、普通方法public class Hero implements Comparable&l

2020-06-15 23:12:51 938

原创 畅购spu,sku分离,Lua,OpenResty,Nginx,Canal同步(二)

文章目录一、spu+sku1、 SPU与SKU概念2、代码生成器二、Lua1、lua是什么2、应用场景3、lua语法三、OpenResty(处理并发)1、openResty介绍2、有关安装OpenResty、配置Lua +Nginx四、Nginx限流1、限流的方式2、控制速率3、控制并发五、Canal同步1、工作原理2、canal同步监听一、spu+sku1、Spu与Sku概念 SPU:某一款商品的公共属性 SKU:某款商品的不同参数对应的商品信息[某个商品]1、 SPU与SKU概念SPU

2020-05-19 22:37:23 361 1

原创 changgou项目搭建、分布式文件管理系统(一)

文章目录一、获取项目资料二、项目技术1、通用mapper2、tk.mybatis中的Example、Criteria查询对象3、公共异常的处理思维三、分布式文件管理系统1、FastDFS介绍2、文上传流程3、环境搭建4、代码实现5、文件上传、下载、获取Storage信息、组信息一、获取项目资料码云仓库地址二、项目技术1、通用mapper这里使用的通用mapper是我之前学习tensquare没有注意到的。**tk.mybatis:**有了这个依赖,我们就可以不用写sql语句,真正实现了开发零sq

2020-05-18 22:35:05 1104

原创 HM品优购小程序开发(二)

文章目录一、页面实现(三)1、结算界面1、效果图2、功能实现2、我的(个人中心)1、效果图2、功能实现3、订单查询1、效果图2、功能实现4、反馈意见1、效果图2、功能实现一、页面实现(三)1、结算界面1、效果图2、功能实现这里涉及到支付,需要企业账号,所以很多地方实现不了有兴趣的可以参考 微信支付开发步骤/** * 1、 页面加载 * 从缓存中获取购物车数据,渲染到页面页面中 * 2、微信支付 * 1、那些人 那些账号 可以实现微信支付 * 1、企业账号 *

2020-05-12 16:02:36 1135

原创 HM品优购小程序开发(一)

文章目录一、引导二、项目搭建1、新建小程序项目2、搭建目录结构3、搭建项目的页面4、引入字体图标5、搭建tabbar结构三、项目页面实现(一)小程序全局配置(app.json)单页面配置(Page)1、首页效果图1、自定义组件2、轮播图,swiper、swiper-item组件3、数据获取wx.request,wx.showLoading显示加载中4、使用本地存储wx.setStorageSync2、tabbar商品分类效果图1、scroll-view组件2、navigator超链接组件3、商品列表1、结构

2020-05-08 22:24:50 1493

原创 jvm详解

文章目录一、jvm结构1、java虚拟机基本结构2、jvm堆结构图及分代1、新生代(Youg Generation)2、老年代(Old Generation)3、永久代(Permanent Generation)二、jvm垃圾回收算法及收集器1、垃圾回收算法2、垃圾收集器3、分代收集器1、新生代收集器2、老年代收集器三、jvm优化1、jvm小工具2、jvm参数介绍3、常见配置4、调优总结一、jv...

2020-05-03 20:54:56 154

原创 八大排序类型(详解)

文章目录一、排序基本概念1、什么是排序?2、内部排序和外部排序3、稳定排序4、排序类型5、排序效率二、交换排序1、冒泡排序2、快速排序三、选择排序四、插入排序五、各种排序比较一、排序基本概念1、什么是排序?排序就是将一个任意序列的一组数据,按某个关键字,重新排列为有序的序列。2、内部排序和外部排序内部排序:内部排序就是整个排序过程在内存储器中进行。外部排序:简单来说,就是数据量太大。内...

2020-05-03 16:56:16 8002 1

原创 二叉排序树详解(Java实现)

文章目录一、二叉排序树定义二、二叉树的表现形式(Java)三、创建二叉树四、遍历二叉排序树1、前序遍历2、中序遍历3、后序遍历左、右、根五、查找某个结点六、删除结点七、总结二叉排序树一、二叉排序树定义特点:一颗空树,或者具有以下性质的二叉树如果左子树不为空,则左子树上所有结点的值均小于根结点的值如果右子树不为空,则右子树上所有结点的值均大于根结点的值它的左、右子树也分别为二叉排序树。...

2020-05-01 13:39:13 1503

原创 java查找树、哈希表、顺序、折半查找

文章目录一、线性表查找1、顺序查找2、折半查找二、查找树1、**二叉查找、搜索、排序树**(binary search/ sort tree)2、**平衡二叉树**(Self-balanceing binary search tree)3、红黑树4、B树、B+树、B*树三、哈希表查找1、结构、特点2、哈希表如何添加数据?3、hashCode()和equals()方法4、hashCode的计算5、如...

2020-04-30 23:12:58 460

原创 图的认识(遍历,最短路径)

文章目录一、图的定义1、图的介绍2、加权图二、图的存储1、邻接矩阵:2、邻接表三、图的遍历1、深度优先遍历(DFS)2、广度优先遍历(BFS)3、最短路径1、最短路径(1)2、最短路径(2)一、图的定义1、图的介绍图是一种网状数据结构,图是由非空集合和一个描述顶点之间关系的集合组成。定义形式如下:Graph = (V,E)V = {x|x属于某个数据对象} , V是具有相同特性的数据元素...

2020-04-27 21:59:03 1864

原创 树与二叉树(概念,特性,操作)

文章目录一、树的基本使用1、树的概念2、结点的度与树的度3、结点的层次和树的深度4、有序树、N叉树、森林二、二叉树1、二叉树概念2、满二叉树和完全二叉树3、二叉树的性质三、二叉树代码实现。1、存储结构2、二叉树遍历1、先序遍历2、中序遍历3、后序遍历3、二叉树接口4、二叉树实现类5、二叉树测试一、树的基本使用1、树的概念2、结点的度与树的度结点的度为:结点拥有子树的个数为结点的度。例如 ...

2020-04-26 21:58:34 223

原创 线性表的认识(源码分析)

文章目录一、线性表的认识二、存储结构1、 顺序表--->顺序存储结构2、链表--->链式存储结构三、顺序表代码实现1、包含内容2、自定义List接口3、自定义ArrayList实现类四、单链表代码实现1、单链表概念2、单链表的查询,添加,删除操作1、查询操作2、添加操作3、删除操作3、单链表代码实现五、其他链表1.双向链表2、循环链表六、java中的线性表1、双向循环链分析一、线性表...

2020-04-25 18:30:03 180

原创 数据结构的认识

文章目录1、为什么要学习数据结构2、数据结构有哪些3、数据结构与算法入门1、基本概念2、数据结构类型1、逻辑结构2、存储结构3、数据结构总结[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dn08bUyr-1587646571207)(C:\Users\gwz\AppData\Roaming\Typora\typora-user-images\158763081454...

2020-04-23 20:58:11 487

原创 Vue快速入门

一、安装nodejs1、下载地址 https://nodejs.org/en/2 、 安装nodejs3、安装成功后查看版本node -v二、Vue简介1、vue安装1、这里注意,如果想跑起来vue项目,首先要安装nodejs依赖环境下载地址: https://nodejs.org/en/2、命令行工具安装npm install -g @vue/cli# ORyarn ...

2020-04-21 22:01:40 156

原创 文件上传(upload)

一、文件上传public UploadResult upload(MultipartFile file) { Assert.notNull(file, "Multipart file must not be null"); // Get current time 获取当前时间 Calendar current = Calendar.getIns...

2020-04-16 16:05:12 46281 1

原创 halo登录,退出解读(六)

一、AdminController1、@RestController@RestController这个注解相当于 @ResponseBody + @Controller@ResponseBody:表示方法的返回值直接以指定的格式写入Http response body中,而不是解析为跳转路径。@Controller: 在一个类上添加@Controller注解,表明了这个类是一个控制器类...

2020-04-13 21:44:27 1158

原创 controller层阶解读(有涉及vue的认识)

一、解读controller 层1、CommonController 解读@Slf4j --》 简化代码,用于日志输出。@Slf4j是用作日志输出的,一般会在项目每个类的开头加入该注解,如果不写下面这段代码,并且想用log 。private final Logger logger = LoggerFactory.getLogger(当前类名.class);就可以用@Slf4来代替;...

2020-04-12 19:32:05 1678

原创 halo配置文件解读application.yaml(四)

一、解读配置文件大多数配置都是参考SpringBoot官网,通用属性配置。1、application.yamlserver: port: 8090 forward-headers-strategy: native compression: enabled: falseport: 服务器端口。forward-headers-strategy: 处理X...

2020-04-09 20:00:48 1987 1

原创 SpringBoot解读启动类内容(三)

1、启动类中的内容a、SpringBootServletInitializer 和 WebApplicationInitializer 的理解现在JavaConfig配置方式在逐步取代xml配置方式。而WebApplicationInitializer可以看做是Web.xml的替代,它是一个接口。在项目加载web项目的时候回加载这个接口的实现类。对于WebApplicationInit...

2020-04-09 18:08:51 204

kafkatool2.7z

kafka连接工具

2021-12-12

Git与Github1.3.pptx

有关Git以及GitHub的详细基本操作和工具介绍,例如:如何创建仓库,提交代码,管理版本等。以及项目如何管理,在工作中的开发流程等

2020-06-18

vueDemo.zip

四小时搞定vue基础语法。该文件讲解了vue的常用模板语法的基本使用情况,拥有配套练习demo进行复习,加深印象,可以版主你快速掌握

2020-04-21

空空如也

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

TA关注的人

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