自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 资源 (4)
  • 收藏
  • 关注

原创 ginbuilder 工具快速创建

golang 创建项目的小工具,快速创建golang gin框架项目模版以及数据库组件

2023-05-02 15:08:38 1026 1

原创 使用golang中goroutine顺序打印a,b,c N次

可以使用golang中的chan来相互通知,然后使用sync/Waitgroup来等待goroutine完成执行结束。该问题中主要考虑的是golang中goroutine的基本能使用,如何控制顺序调用。

2023-03-27 13:47:01 378

原创 golang 两个栈实现一个队列

stack,queue两个栈实现队列golang

2022-10-12 13:24:31 294

原创 Nginx启动的坑: nginx: [error] open() “/run/nginx.pid“ failed (2: No such file or directory)

nginx异常/nginx.pid: No such file or directory

2022-09-23 17:16:01 906

原创 基于docker搭建redis高可用集群

redis集群主从复制高可用集群

2022-09-17 16:00:44 497

原创 基于docker搭建redis哨兵模式

redis哨兵redus 集群

2022-09-16 22:53:26 2135

原创 基于docker搭建redis主从集群

redis集群主从复制

2022-09-16 20:34:57 794

原创 基于docker搭建mysql主从集群

mysql主从复制mysql集群搭建docker搭建mysql集群

2022-09-15 23:33:07 334

原创 python中如何使用抽象类?

设计模式Python接口抽象类

2022-09-12 23:34:16 271

原创 golang leetcode算法小抄

leetcode回溯BFSDFS动态规划

2022-09-09 22:15:11 275

原创 Golang 基于Gin框架搭建的完整脚手架

golangginweb脚手架服务器脚手架组件封装工具函数

2022-09-07 14:17:53 3267 3

原创 动态规划(背包问题-golang)

【0-1背包问题】问题描述:有n个物品和一个最多能承受重量为W WW的背包,其中第i ii件物品的重量是weight [ i ] ,所对应的价值为value[i],每一件物品只有一件(即只能放入背包一次),求解将哪些物品放入背包后得到的背包中物品的总价值最大?递归分析weight物品的重量,那么我们从0开始选择,就存在选或者不选的两种情况,在这两种情况之下,那么背包的重量也存在两种情况,可以装下或者无法装下,递归函数如下:// weight 物品的容量// value 物品的价值// in

2022-05-29 13:18:25 255

原创 Golang-排序

golang 排序Golang 排序冒泡排序选择排序插入排序快速排序Golang 排序冒泡排序package mainimport "fmt"func main(){ nums := []int{2,3,8,4,6,12,3,4,59,1,2,7} fmt.Println(nums) fmt.Println(bubbleSort(nums))}// bubbleSort 冒泡排序func bubbleSort(nums []int) []int{ if len(nums) &

2022-01-09 21:02:58 421

原创 Docker详解

docker容器

2021-11-16 20:02:58 424

转载 MySQL之查询优化(EXPLAIN)

MySQL之查询优化(EXPLAIN) 查询优化器查询瓶颈执行计划(EXPLAIN)作用 执行计划字段介绍结构解释1.`id `2. `select_type`3. table4. `type`5. possible-keys6. `key`7. key_len8. `ref`9. rows10. ExTra覆盖索引(C...

2021-10-31 17:37:12 178 1

转载 mysql之优化案例

MySQL之优化案例 单表简单案例模拟数据模拟查询如何优化新建索引再次查看执行计划删除并重建索引再次查看执行计划 双表简单案例模拟数据查看执行计划 三表简单案例模拟数据 总结 单表简单案例 模拟数据 CREATE TABLE IF NOT EXISTS `article`(`id` INT(10) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,`author_id` INT (10) UNSIGNED NOT N.

2021-10-31 17:35:29 324

原创 Linux面试总结

Linux知识要点1、Linux/git命令和作用2、进程相关命令3、启动/停止任务4、查看日志和端口号5、查找文件指令6、vim(vi)编辑器的基本操作7、查看磁盘使用情况指令8、查看文件指令合集。

2021-08-28 17:36:55 76

原创 Mysql面试总结

数据库知识要点1、什么是索引?索引有哪几种索引的基本介绍索引用来快速地寻找那些具有特定值的记录,所有的MySQL索引都以B+树(平衡树)的形式保存如果没有索引,执行查询的时候MySQL必须从第一个记录开始扫描整个表中的所有记录,直至找到符合要求的记录。表里面的记录数量越多,这个操作的代价就越高。虽然索引大大提高了查询速度,同时却会降低更新表的速度,如对表进行insert、update和delete。因为更新表时,不仅要保存数据,还要保存一下索引文件索引只是提高效率的一个因素,如果有大数据量的表,

2021-08-28 17:35:35 77

原创 python基础知识

文章目录一、python基础知识要点1、到底什么是Python?你可以在回答中与其他技术进行对比2、python常见的装饰器3、Python的垃圾回收机制(garbage collection)4、join 和 + 拼接字符串的区别5、\__new__ 和 \__init__的用法和区别6、*args 和 **kwargs 的用法区别7、python解释器中的闭包8、python中的深浅拷贝二、网络编程的基础知识要点1、网络中进程之间如何通信?2、简述三次握手、四次挥手3、七层模型以及每一层常用的协议4、简

2021-08-28 17:33:55 445

原创 丑数

给你一个整数 n ,请你判断 n 是否为 丑数 。如果是,返回 true ;否则,返回 false 。丑数 就是只包含质因数 2、3 和/或 5 的正整数。示例 1:输入:n = 6输出:true解释:6 = 2 × 3示例 2:输入:n = 8输出:true解释:8 = 2 × 2 × 2示例 3:输入:n = 14输出:false解释:14 不是丑数,因为它包含了另外一个质因数 7 。示例 4:输入:n = 1输出:true解释:1 通常被视为丑数。javapacka

2021-04-10 22:47:31 111

原创 两数相加

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.示例 2:输入:l1 = [0], l2 = [0]输出:[0]示例 3:输入:l1 = [9,9,9,9,9,9,9], l2 =

2021-03-30 20:16:03 67

原创 python数据类型之谜--tuple

数据类型 – tuple众所周知,在python中有6种常见的基本数据类型三种可变得数据类型:列表(list)、集合(set)、字典(dict);三种不可变的数据类型:数值类型(int/flaot)、字符串类型(str)、元组(tuple)其中对于可变和不可变的数据类型相信每一个人都知道是指的是其中的元素是否可以改变,改变其中的值元素对象的地址是否改变。那么接下来,我们就来讨论一下今天的主角–tuple,他真的是不可变的嘛?废话不多说,直接上代码"""我相信以下的代码所有人都明白,因为l

2020-11-07 10:50:57 187

原创 寻找数组的中心索引

给定一个整数类型的数组 nums,请编写一个能够返回数组 “中心索引” 的方法。我们是这样定义数组 中心索引 的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。示例 1:输入:nums = [1, 7, 3, 6, 5, 6]输出:3解释:索引 3 (nums[3] = 6) 的左侧数之和 (1 + 7 + 3 = 11),与右侧数之和 (5 + 6 = 11) 相等。

2020-11-05 23:26:01 682

原创 两个数组的交集

给定两个数组,编写一个函数来计算它们的交集。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2]示例 2:输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[9,4]说明:输出结果中的每个元素一定是唯一的。我们可以不考虑输出结果的顺序。java实现class Solution { public int[] intersection(int[] nums1, int[] nums2) { T

2020-11-02 23:05:30 101

原创 Java使用UDP实现简单通信

发送端import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.*;public class ReceiveDemo { public static void main(String[] args) throws IOException { // 创建发端Socket对象 DatagramSocket

2020-11-02 20:19:44 516

原创 软件缺陷与测试

测试基本理论知识1、软件缺陷的定义2、测试的作用3、软件测试的定义软件的定义IEEE定义的测试广义的软件测试软件测试的目的测试和调试的区别4、软件测试的方法1、单元测试2、集成测试3、确认测试4、系统测试5、验收测试1、软件缺陷的定义所有不满足需求或超出需求的都是缺陷没有不存在缺陷的软件,只有尚未发现的缺陷1、软件未实现产品说明书所定义的功能2、软件出现了产品说明书指明了不应该出现的功能3、软件出现了产品说明说未提到的功能4、软件未实现虽未明确提及但是应该实现的功能5、软件难以理解、不宜使

2020-10-26 11:34:03 1328

原创 unittest单元测试框架基本使用

1、unittest介绍Python单元测试框架,基于erichgamma的JUnit和kentbeck的Smalltalk测试框架(经许可使用)。此模块包含核心框架类,这些类构成特定的测试用例和套件(TestCase、TestSuite等),以及用于运行测试和报告结果的基于文本的实用程序类(TextTestRunner)。2、unittest常用方法1、TestCase(测试用例):所有的测试用例的基类,一个test case 包括正常执行的用例,其中包括setup(用例的开始),tearD

2020-10-24 22:01:13 850

原创 selenium测试错误

1、Message: no such element: Unable to locate element: {“method”:“css selector”,“selector”:"[id=“1”]"}代码:import timefrom selenium import webdriverdriver = webdriver.Chrome()# 设置动态等待时间,最大等待时间为10s (解决方法一:推荐使用)driver.implicitly_wait(10)driver.get("ht

2020-10-19 17:12:33 258

原创 matplotlib中解决中文无法显示或者乱码问题

一、对于windows中1、方法一import matplotlibfont = {'family' : 'MicroSoft YaHei', 'weight' : '6', 'size' : '10'}matplotlib.rc('font',**font)2、方法二import matplotlib.pyplot as plt# 处理中文显示问题plt.rcParams['font.sans-serif'] = ['SimHei']#

2020-09-19 16:17:07 181

原创 python+网易云信API发送短信

# coding=utf-8import hashlibimport timeimport requestsdef send_code(mobile): url = 'https://api.netease.im/sms/sendcode.action' """ AppKey 开发者平台分配的appkey Nonce 随机数(最大长度128个字符) CurTime 当前UTC时间戳,从1970年1月1日0点0 分0 秒开始到现在的秒数(String)

2020-08-04 11:10:12 559 2

原创 Flask的Bug之路

因为在进行Flask的学习,所以自己就把自己学习过程中遇到的bug记录下来,方便后续遇到可以更好的解决一、路由访问类型错误1. 错误:The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.     原因:改错误方式可以直接找到,只有一种,就是访问的路径没有找到,也就是说在

2020-08-01 20:55:42 2851

原创 Flask之MVC拆分(Blueprint-->蓝图)

一、新建flask项目默认结构自动创建完成了templates、static两个资源文件夹,一个管理文佳app.py二、使用蓝图(Blueprint)进行项目拆分,将MVC拆分开来1、创建各个文件settings.py(配置文件)models.py(数据库模型文件)init.py(项目初始化文件)ext.py(依赖库初始化文件)views.py(视图文件)2、 安装需要的插件库(Blueprint)pip install flask-blueprint(蓝图插件)pip ins

2020-08-01 20:22:10 771

原创 Java中使用数组模拟栈的基本操作

废话不多说,直接上代码实现类,主要实现功能如下:返回栈长度判断栈满、栈空压栈、弹栈遍历栈中的元素其中带有有参构造和无参构造方法,默认初始化栈的长度为5,用户可以通过有参构造自定义长度package com.company.arry;// 使用数组模拟栈的接操作public class ArrayImitateStack { // 定义一个数组作为栈,设置默认初始长度为5 Object [] stack = new Object[5]; private int

2020-06-20 11:14:23 234

原创 JDBC的SQL注入攻击

SQL注入问题1、SQL注入原理1.1 SQL注入攻击:1.2 SQL注入案例1.3 SQL注入分析2、如何处理SQL注入问题2.1 PreparedStatement预编译的机制2.2 PreparedStatement的优点2.3 PerparedStatement的使用3、SQL防注入案例1、SQL注入原理1.1 SQL注入攻击:上一篇文章所使用到的SQL语句是拼接出来的,其中有一部分内容是由用户从客户端传入,所以当用户传入的数据中包含sql关键字时,就有可能通过这些关键字改变sql语句的语义,

2020-06-05 14:51:57 504 2

原创 JDBC连接数据库(mysql)

1、JDBC介绍Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。JDBC也是Sun Microsystems的商标。我们通常说的JDBC是面向关系型数据库的。2、JDBC驱动的使用2.1 配置JDBC驱动首先,自己使用什么数据库,需要先去官网下载jdbc驱动,我在这里使用的mysql,使用的语言是Java,编译器是eclipse。对jdbc驱动进

2020-06-05 14:13:26 325

原创 使用socket模仿tomcat服务器的简单的通信

1、介绍此项目主要使用socket模仿tomcat服务器处理业务,完成各个业务逻辑的处理,可以帮我们更深入的理解服务器个逻辑处理过程,以及对各个部分知识的掌控(菜鸟学习的过程)。程序的启动入口:Bootstrap.java2、使用工具eclipse + jdk1.83、学习视频地址http://www.bjpowernode.com/javavideo.html?java12344、githup地址https://github.com/strive-me/httpserver.git..

2020-06-04 11:50:54 191

原创 Java基本算法《排序算法:选择排序》

选择排序package JavaNote001;import java.util.Scanner;import java.util.Arrays;/** * 选择排序: 初始状态:无序区为R[1..n],有序区为空。 1)第1趟排序 在无序区R[1..n]中选出关键字最小的(最大的)记录R[k],将它与无序区的第1个(无需的数组的第一个元素一定是有序的)记录R[1]交换,使R[...

2020-05-18 17:40:43 139

原创 ubuntu19.04中安装msyqlclient的报错解决方法

1、安装mysqlclientpip3 install mysqlclient报以下错误,各种换源之后2、换源之后继续安装使用临时源安装依旧报错3、经过各种尝试以及上网查找解决在终端进入root用户在root执行: apt-get -y install mysql-server mysql-client libmysqlclient-dev mytop执行成功之后开始重新安装mysqlclient即可pip3 install mysqlclientliang@liang-Adm

2020-05-15 10:18:52 918 1

原创 数据结构算法编程《抢红包等概率算法》

题目:所有人抢到金额之和等于红包金额,不能超过,也不能少于每个人至少抢到一分钱要保证所有人抢到金额的几率相等python实现(二倍均值法)红包剩余金额为M,剩余红包个数为N,每一次抢到的金额 money = random(0,M*2/N)import randomnum = int(input("输入红包的个数:"))money = float(input("输入红包的金...

2020-04-21 11:24:15 985

原创 数据结构算法编程《判断文件是否存在》

题目:判断当前目录下某个文件是否存在,如果存在则读取文件内容,如果不存在则创建文件并写入内容之后读取写入的内容import os# 判断某一个文件是否存在,存在则读取其中的内容,不存在则写入内容并读取fileNmae = input("输入文件的名称")if os.path.exists(fileNmae): with open(fileNmae,'r') as fp: ...

2020-04-20 19:32:21 234

Kafka -- 思维脑图

Kafka -- 思维脑图

2022-01-21

redis -- 思维脑图

redis -- 思维脑图

2022-01-21

mysql -- 思维脑图

mysql -- 思维脑图

2022-01-21

docker-思维脑图

docker-思维脑图

2022-01-21

空空如也

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

TA关注的人

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