自定义博客皮肤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)
  • 收藏
  • 关注

转载 springcloud vue 微服务分布式 activiti工作流 前后分离 集成代码生成器 shiro权限

1.代码生成器: [正反双向](单表、主表、明细表、树形表,快速开发利器)freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面、建表sql脚本、处理类、service等完整模块2.多数据源:(支持同时连接无数个数据库,可以不同的模块连接不同数的据库)支持N个数据源3.阿里数据库连接池druid,安全权限框架 shiro(菜单权限和按钮权限), 缓存框架 ehcache4.代码编辑器,在线模版编辑,仿开发工具编辑器5.调用摄像头拍照 自定义裁剪编辑头像,头像图片色度调节6.web...

2020-06-30 20:21:09 377

转载 MQ 分布式事务 -- 微服务应用

1、背景友情链接:https://www.cnblogs.com/Agui520/p/11187972.html    https://blog.csdn.net/fd2025/article/details/79863390以支付、电商下单为例子。一个电商系统包含了好几大类模块,就比如有用户模块、商品模块、库存模块、订单模块、支付模块、物流模块,活动模块等,以下就先列举几个最基础常见的模块(用户模块、商品模块、库存模块、订单模块、支付模块)。用户流程如下:2、问题如果系统规模...

2020-06-30 08:20:03 515

转载 面向对象的六大原则之 接口隔离原则——ISP

ISP = Interface Segregation PrincipleISP的定义如下:1、客户端不应该依赖他不需要的接口2、一个类对另外一个类的依赖性应该是建立在最小的接口上3、不应当将不同的接口合并在一起,形成一个臃肿的大接口,这是对接口的污染4、使用多个专门的接口要比使用单一的总接口要好ISP的几个使用原则1、根据接口隔离原则拆分接口时,首先必须满足单一职责原则: 没有哪个设计可以十全十美的考虑到所有的设计原则,有些设计原则之间就可能出现冲突,就如同单一职责原则...

2020-06-29 15:21:08 235

转载 23种设计模式之单例模式

单例模式单例模式分八种方式1)饿汉式(静态常量)2)饿汉式(静态代码块)3)懒汉式(线程不安全)4)懒汉式(线程安全,同步方法)5)懒汉式(线程安全,同步代码块)6)双重检查7)静态内部类8)枚举饿汉式(静态常量)public class SingletonTest01 { public static void main(String[] args) { // 测试 Singleton s1 = Singleton.getInstance();...

2020-06-28 20:21:10 61

转载 23种设计模式之原型模式

原型模式1、基本介绍1)原型模式(Prototype模式)是指:用原型实例指定创建对象的种类,并通过拷贝这些原型,创建新的对象。2)原型模式是一种创建型设计模式,允许一个对象再创建另一个可定制的对象,而无需知道如何创建的细节。3)原理:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建,即 对象.clone()。4)结论:使用原型模式使程序有更高的效率和扩展性。5)类图:Prototype:原型类,声明一个克隆自己的接口。Concret...

2020-06-28 15:21:07 142

转载 前后端分离,认证框架分析

跨域安全访问APIoauth2是一种用户授权标准,jwt是传递token的一种消息标准,shiro是一个授权框架1、JWTJSON Web Token (JWT)是一个开放标准(RFC 7519),它定义了一种紧凑的、自包含的方式,用于作为JSON对象在各方之间安全地传输信息。该信息可以被验证和信任,因为它是数字签名的。加密、解密、开发包等,请参考官网:https://jwt.io/《JWT token破解绕过》《前后端分离之JWT用户认证》《认识JWT》2、OAuth2...

2020-06-27 08:20:12 89

转载 (转)阿里 RocketMQ 安装与简介

原文:阿里 RocketMQ 安装与简介一、简介官方简介:l RocketMQ是一款分布式、队列模型的消息中间件,具有以下特点:l 能够保证严格的消息顺序l 提供丰富的消息拉取模式l 高效的订阅者水平扩展能力l 实时的消息订阅机制l 亿级消息堆积能力二、网络架构三、特性1. nameserver相对来说,nameserver的稳定性非常高。原因有二:1 、nameserver互相独立,彼此没有通信关系,单台nameserver挂掉,不影响其他...

2020-06-26 20:21:14 263

转载 Java Builder 模式,你搞明白了么?

Builder 模式定义Builder 模式中文叫作建造者模式,又叫生成器模式,它属于对象创建型模式,是将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。下图是建造者模式的通用类图:在建造者模式中,有如下4种角色:Product:产品角色Builder:抽象建造者,定义产品接口ConcreteBuilder:具体建造者,实现Builde...

2020-06-26 15:21:07 153

转载 设计模式六大原则:依赖倒置原则

目录:  设计模式六大原则:单一职责原则  设计模式六大原则:接口隔离原则  设计模式六大原则:依赖倒置原则  设计模式六大原则:里氏替换原则  设计模式六大原则:迪米特法则  设计模式六大原则:开闭原则依赖倒置原则(Dependence Inversion Principle):    1、高层模块不应该依赖底层模块,二者都应该依赖抽象。  2、抽象不应该依赖细节,细节应该依赖抽象。  3、依赖倒置的中心思想是面向接口编程。  4、依赖倒置原则是基于这样的设计理念:相对...

2020-06-26 08:20:05 140

转载 Docker Compose部署GitLab服务,搭建自己的代码托管平台(图文教程)

场景Docker-Compose简介与Ubuntu Server 上安装Compose:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100902301Docker Compose基本使用-使用Compose启动Tomcat为例:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100904080Docker Compose部署项目到容器-基于Tomca...

2020-06-24 20:21:12 160

转载 Ubuntu Server 上使用Docker Compose 部署Nexus(图文教程)

场景Docker-Compose简介与Ubuntu Server 上安装Compose:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100902301Docker Compose基本使用-使用Compose启动Tomcat为例:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100904080Docker Compose部署项目到容器-基于Tomca...

2020-06-24 15:21:08 105

转载 设计模式-结构型-外观模式

外观模式(Facade):  外部通过一个统一的接口,访问子系统中的一群接口。外观模式定义了一个高层接口,为子系统中的一组接口提供一个一致的入口,使得子系统更容易使用。外观模式相对比较简单,可以理解为中介,原先租房需要自己一个个筛选,联系房东,谈好价格,签合同等等,现在不需要这些了,只要你说出要求中介就会将房子找好,你只需要掏钱签合同就可以了,不需要关系其他琐碎的事情。外观模式的角色:  1)外观角色:为多个子系统对外提供一个共同的接口;  2)子系统角色:实现系统的部分功能,客户可以通过...

2020-06-23 20:21:12 132

转载 从无到有,构建GIS + BIM大厦

声明:本文是一个系列原创(作者在GIS+BIM行业已有从业15年有余,还是个行业的小学生,文章内容不免有错误或者不当之处,敬请理解),旨在通过这个系列打造一个高性能,高可扩展的GIS+BIM框架,抛砖引玉,为国内GIS+BIM行业贡献绵薄之力。对于行业内的人说到GIS、BIM最先想到是:引擎,是的,没有错,应该说一个好的引擎是核心了,放眼国内,做GIS的公司很多,做BIM的也很多,但原创却很少,做到行业知名的却是没有,说到GIS,不得不提我们的祖师...

2020-06-23 08:20:08 568 1

转载 Java通信——获取自己IP

获取自己的IP地址import java.net.InetAddress;import java.net.UnknownHostException;public class getip { public static void main(String[] args) throws UnknownHostException { /** * ip地址对象。 InetAddress * @throws UnknownHostExcep...

2020-06-21 15:21:08 134

转载 [七年技术总结系列][理论篇]-RBAC权限模型由浅入深

权限部分将分两章介绍,第一章由浅入深介绍权限理论知识及应用,第二章介绍具体实现。后期再讲述中间件的使用时,还会插入一些权限内容,本质上属于中间件的应用。权限模块是业务系统最常见、最基本的子集。本章假定了一个系统从最初简单的需求到逐渐成熟且完善的权限体系的实现过程。阅读本章预计花费20分钟。1. 最简单的权限模型业务系统初期,需求简单,对于权限的内容本身并不复杂,我们假设权限部分仅有这样简单的需求:能给用户赋予数据的增、删、改、查四种权限分析此需求,权限的主体为用户,权限的内容有...

2020-06-20 20:21:14 230

转载 支撑马蜂窝「双11」营销大战背后的技术架构

(马蜂窝技术原创内容,公众号 ID: mfwtech)引言消费者的狂欢节「双 11」刚刚过去。在电商竞争环境日益激烈的今天,为了抓住流量红利,双 11 打响的已经不仅仅是「促销战」,也是「营销战」,这对平台的技术支撑能力提出新的要求。从 2014 年的「318 大促」,到正在进行的 「马蜂窝双 11 全球旅行蜂抢节」,马蜂窝旅游电商业务的大促已经走过 5 年时间,仅仅是双 11、暑期、十一黄金周、年终这些关键节点的 S 级促销就张罗了 50 多场,每年上线活动达几百个。图:马蜂窝11.1...

2020-06-19 15:21:06 361

转载 Centos7安装redis5.0.7

1. 安装依赖包(Redis是C语言开发,需要安装gcc依赖环境)yum install -y gcc gcc-c++2. 下载最新版redis安装包并解压安装cd /usr/local/srcwget http://download.redis.io/releases/redis-5.0.7.tar.gztar -zxvf redis-5.0.7.tar.gzmkdir -p /usr/local/redis/{etc,data}cd redis-5.0.7/#指定redi...

2020-06-18 20:21:17 107

转载 python初学者-计算小于100的最大素数

for n in range(100,1,-1): for i in range(2,n): if n%i==0: break else: print(n,end=' ')

2020-06-17 15:21:06 12719 3

转载 STM32 f103搭配LM386声音传感器实现简单音乐识别

STM32 f103搭配LM386声音传感器实现简单音乐识别1.前言 2019年12月初,有一个中国机器人技能大赛中的双足机器人比赛项目,意思是机器人识别音乐跳对应节奏的舞蹈,五首音乐随机抽三首歌曲,音乐停,机器人停。 新比赛,新项目,难度自然有,坑也不少。希望这篇文章能给大家带来一点帮助。废话不多说,进入正题。2.效果(健康歌)每100ms采样一次,歌曲前5秒内共测50次数据,重复12组(卡路里) 重复7组 可以看出一首歌经过多次测值,其采样值数组...

2020-06-16 08:20:05 3551 1

转载 Python源码剖析 - Python中的整数对象

1. 不可变的PyIntObjectPython源码剖析 - 对象初探 我们对 PyIntObject 已经有了初步的了解。 Python 中的对象可以分为固定长度和可变长度两种类型。除此之外,也可以按照可变和不可变进行划分。PyIntObject 则属于长度固定且不可变的对象。相比其他的对象而言,最简单,也最容易理解。我们先来了解一下 PyIntObject 类型的类型信息,代码如下:PyTypeObject PyInt_Type = { PyVarObject_HEAD_IN...

2020-06-15 20:21:12 134

转载 [PHP] GET参数加密签名保证安全防止篡改

当我们开发时候需要对外开放接口 , 不管是GET还是POST , 都有点害怕对方传递给我们参数的方式被别人知道 , 然后直接改改参数搞破坏.这时候就需要对参数进行一下安全的验证工作 , 对参数进行加密后的字符串拼接在要传递的参数后面 , 接收方同等加密进行判断一致比如在get参数部分 , 一般有一个ts的时间戳 , 防止当前接口的url被频繁的调用 , 接收方对传过来的时间戳进行判断看看过期没有把所有要传递的参数拼接成一个字符串 , 拼接上双方约定的一个秘钥 , 进行md5或者其他哈希...

2020-06-15 08:20:06 635

转载 听说知乎大神用python爬取高颜值美女,是怎么操作的?

1 数据源知乎话题『美女』下所有问题中回答所出现的图片2 抓取工具Python 3,并使用第三方库 Requests、lxml、AipFace,代码共 100 + 行3 必要环境Mac / Linux / Windows (Linux 没测过,理论上可以。Windows 之前较多反应出现异常,后查是 windows 对本地文件名中的字符做了限制,已使用正则过滤)无需登录知乎(即无需提供知乎帐号密码)人脸检测服务需要一个百度云帐号(即百度网盘 / 贴吧帐号...

2020-06-14 20:21:11 229

转载 迷宫算法 之 迷宫生成和迷宫寻路

本文讲解迷宫生成和迷宫寻路算法。////////////////////////////////////////////////////////////////////////////////////////////////////一、三种迷宫生成算法    1、 DFS(即深度优先)算法生成,分为递归和非递归方法。    2、 十字分割算法生成,分为递归和非递归方法。    3、随机 Prim 算法生成,一种非递归方法。二、两种迷宫寻路算法    1、DFS 寻路,采用非...

2020-06-14 15:21:08 3216

转载 数据库的悲观锁、乐观锁

并发控制并发情况下,需要做一些控制(一般是加锁),保证共享数据的一致性。并发操作数据库时,需要给数据库中的数据加锁,确保数据库中数据的一致性。数据库锁的常见分类按使用方式来分:悲观锁、乐观锁按锁级别来分:共享锁、排它锁(主要是这2种,当然还有其他的)按锁粒度来分:行级锁、表级锁、页级锁悲观锁Pessimistic Lock悲观的,假设是最坏的情况,认为其它线程一定会修改当前线程使用的数据库数据,当前线程一定要给使用的数据库数据加锁。...

2020-06-13 20:21:12 177

转载 面试刷题13:接口和抽象类有啥区别?

掌握面向对象的原则可以提高开发,沟通的效率和质量。 我是李福春,我在准备面试,今天的问题是: 接口和抽象类有什么区别?接口和抽象类是面向对象语言的重要设计元素。区别如下:下面扩展一下,面试官可能延伸的问题。面向对象的特性封装: 一切皆对象,对象具备成员和方法,封装了内部细节,使得具备边界,提高程序的安全性和简洁性;继承:代码复用的手段,是一种强耦合关系,但是只能单继承,应该避免过度使用继承多态:通过抽象类和接口都可以实现多态,在不同的实现类或者子类中,行文定义有不同的实现形态...

2020-06-12 20:21:10 84

转载 面试刷题14:介绍一下你工作中用到的设计模式?

那些被时间沉淀下来的最贱时间,就是设计模式,它有利于提高沟通和设计的效率和质量。我是李福春,我在准备面试,今天的问题是:工作中你用到了哪些设计模式?**分析:**这个问题比较open, 可以结合以往项目经历中用到的设计模式,挑选2个左右的例子出来讲解,讲讲为什么要使用设计模式,带来了哪些优点和不便。如果实在找不出来,可以结合jdk和spring,每个挑一两个地方来讲2种左右的设计模式,相信面试官也会比较满意。**我的回答:**设计模式是程序员在设计过程中多年的最佳实践沉淀,可以提高工程师之间研发...

2020-06-12 15:21:07 332

转载 搭建eureka,gateway,admin,redis,docker系列一redis和redisapi一起了

本章内容涉及 redis 接口Aspect签名 swagger21,Linux centOS服务器安装redis 相关安装命令去网上具体找一下,比较简单 我使用了config set maxmemory-policy volatile-lru 策略2,创建一个空的module项目添加pom依赖<dependencies> <dependency> <groupId>org.jetbrains</...

2020-06-11 20:21:10 117

转载 理解Golang组件protobuf

什么是protobufprotocol buffers 是一种语言无关、平台无关、可扩展的序列化结构数据的方法,它可用于(数据)通信协议、数据存储等。是一种灵活,高效,自动化机制的结构数据序列化方法-可类比 XML,但是比 XML 更小(3 ~ 10倍)、更快(20 ~ 100倍)、更为简单。protobuf与json区别JSON与Protobuf都可以用来信息交换,JSON是一种简单的消息格式,以文本方式传输,而Protobuf是以二进制方式进行传输,相较于JSON消息体积会有明显的缩小,...

2020-06-10 20:21:11 253

转载 php运算符

PHP运算符按操作数:一元运算符(只能接受一个值)二元运算符(接受两个值)三元运算符(接受三个值)按类型:算术运算符赋值运算符位运算符比较运算符错误控制运算符递增/递减运算符逻辑运算符算法运算符/* * - 取反 * + 加法 * - 减法 * * 乘法 * / 除法 (两个整数能整除会返回integer型,其他情况会返回float型) * % 取模 (在运算之前会将两个数除去小数部分,转换成整数,结果和被除数的符号--正负号相同,和除数的符号无关) ...

2020-06-09 20:21:08 100

转载 LeetCode 914. 卡牌分组

我的LeetCode:https://leetcode-cn.com/u/ituring/我的LeetCode刷题源码[GitHub]:https://github.com/izhoujie/AlgorithmciiLeetCode 914. 卡牌分组题目给定一副牌,每张牌上都写着一个整数。此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组:每组都有X张牌。组内所有的牌上都写着相同的整数。仅当你可选的 X >= 2 时返回true。示例 1...

2020-06-09 15:21:04 66

转载 史上最全的Python面向对象知识点疏理

python面向对象技术简介类: 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。数据成员:类变量或者实例变量用于处理类及其实例对象的相关的数据。方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖,也称为方法的重写。实例变量:定义在方法中的变量,只作用于当前实例的类。另外要注意:不管你是为了P...

2020-06-09 08:20:03 255

转载 ZooKeeper架构 :分布式过程协同技术详解

引言构建分布式系统并不容易。然而,人们日常所使用的应用大多基于分布式系统,在短时间内依赖于分布式系统的现状并不会改变。ApacheZooKeeper旨在减轻构建健壮的分布式系统的任务。ZooKeeper基于 分布式计算的核心概念而设计,主要目的是给开发人员提供一套容易理解和开发的接口,从而简化分布式系统构建的任务。即使有了ZooKeeper,但开发中分布式处理的环节并不是微不足道的事情,因此我们编写了这本书,通过这本书可以让你快速熟悉如何通过Apache ZooKeeper构建分布式系统。我们从...

2020-06-08 08:20:05 197

转载 Spring Controller单例与线程安全那些事儿

目录单例(singleton)作用域原型(Prototype)作用域多个HTTP请求在Spring控制器内部串行还是并行执行方法?实现单例模式并模拟大量并发请求,验证线程安全附录:Spring Bean作用域单例(singleton)作用域每个添加@RestController或@Controller的控制器,默认是单例(singleton),这也是Spring Bean的默认作用域。下面代码示例参考了Building a RESTful Web Service,该教程搭建基于Sp...

2020-06-07 15:21:05 222

转载 设计Weekday类 代码参考

1 #include <iostream> 2 3 using namespace std; 4 5 class Weekday 6 { 7 private: 8 int num; 9 public:10 void SetDay(){cin>>num;return;}11 void IncDay(){num+=1;if(num>6) num-=7;return;}12 ...

2020-06-06 20:21:09 187

转载 Python源码剖析 - Python中的字符串对象

1. 前言我们已经在 【Python中的整数对象】 章节中对定长对象进行了详细的讲解,接下来我们将介绍变长对象,而字符串类型,则是这类对象的典型代表。这里必须先引入一个概念:Python 中的变长对象分为两类:变长可变对象 - 例如 List,创建后还能添加、删除元素变长不可变对象 - 例如 String,Tuple, 创建后,不再支持添加、删除等操作2. PyStringObject初识PyStringObject 是对字符串对象的实现方式。首先它是一个可变长度的对象,这个可变是...

2020-06-06 15:21:08 137

转载 13.面向对象-----属性赋值顺序及JavaBean

一、属性赋值顺序1.属性可以赋值的位置①默认初始化;②显示初始化;③构造器中初始化;④通过“对象.属性”或“对象.方法”的方式对属性进行赋值;2.先后顺序①- ② - ③ - ④二、JavaBean所谓JavaBean,是指符合以下标准的类:1.类是公共的;2.有一个公共的无参的构造器;3.有属性,且有对应的get和set方法。举例://如下的类就是JavaBean类public class test { public test(){ ...

2020-06-06 08:20:04 278

转载 SpringBoot多环境分离resources和lib进行打包

为了更便捷的在本地进行开发,偶尔的又会涉及到测试和生产打包,每个环境下的配置不尽相同,需要配置多环境的配置文件,避免打包时还要自己特意去修改配置文件SpringBoot项目的默认配置文件在main/resources下的application.properties且通过配置项 spring.profiles.active 来设置多环境属性,所以可以就此文件创建多个环境的application.properties,只是spring.profiles.active区分开特定的环境值,再通过mave...

2020-06-05 20:21:11 647

转载 安装psycopg2出错问题处理记录

使用postgresql数据库一直都是在服务器同一台机子上,所以一向都正常,今天在其他服务器上调用,执行pip3 install psycopg2后直接暴下面错误:[root@slave2 ~]# pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ psycopg2Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple/Collecting psycopg2 ...

2020-06-04 20:21:09 659

转载 [PHP] 中英双语网站的设计思路

1. 前几天开发一个双语网站企业站 , 实现思路大部分情况下 , 我们可以想到是使用一个语言包数组文件 . key和value的形式 , 我们在展示界面时 , 输出数组对应的key而不是固定写死这个值大概的设计是这样的 , 有两个这样的php文件cn.phpen.php里面就是返回一个数组return array(  'name'=>'姓名',  'age'=>'年龄')return array(  'name'=>'Name',  'age'=&gt...

2020-06-04 15:21:07 580

转载 听说用 Lombok 可以早点下班?

听说隔壁用 Lombok 的六点就下班了,我也想六点下班!好的,那么这篇文章就介绍下什么是 Lombok,Lombok 做了什么以及 Lombok 是怎么做的?在介绍之前,先通过是否使用 Lombok 的效果来看下对比,首先来看下没有 Lombok 之前,我们的一个简单的 Java 对象(POJO)是长什么样子的:哦,我的天啊,居然 60 行,好长啊!那我们接下来使用的 Lombok 来试下:什么,只使用了 @Date 注解就可以实现之前 60 行的相同功能,代码长度整整缩小了 3 倍...

2020-06-04 08:20:07 249

空空如也

空空如也

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

TA关注的人

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