自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (6)
  • 收藏
  • 关注

原创 后端开发-通用说明及开发规范

1 后端接口开发规范1.1 开发原则自顶向下的设计原则:功能应该从表现层分析再到控制层、服务层、持久层逐层设计自底向上的开发原则:上层需调用下层,因此开发应从底层向上层逐层开发项目中开发的层次次序参考DB->中间件->持久层->服务层->控制层单一职责的开发原则:类或者方法提供的功能应该单一明确,特别越底层越应单一职责,以便维护项目中Mapper方法必须功能单一,参数明确,拒绝两种以上的持久逻辑使用同一个Mapper方法依赖倒置的开发原则:上层依赖下层,

2020-06-24 12:28:59 933

原创 Idea插件JRebel配置方法

服务器地址监听服务器地址:http://jrebel.cicoding.cnGUID生成器:http://jrebel.cicoding.cn/guid生成的如下:服务器地址监听服务器地址和GUID生成码进行拼接,如下所示http://jrebel.cicoding.cn/C59E971B-465B-814D-C4BD-02158BF600D7IDEA配置JRebel 打开IDEA中Settings如下:找到File -> Settings -> JR..

2020-06-23 17:36:20 745

原创 java代码质量相关插件(PMD|JaCoCo|sonar)关于maven及IDEA使用及配置

java后端项目代码质量检测集成插件静态代码分析:PMD代码测试用例覆盖率:jacoco持续代码质量检查:sonar注:后续主要介绍,如何在maven和idea上提成上述插件二、静态代码分析插件集成​ PMD是一种代码静态分析工具,当使用PMD规则分析Java源码时,PMD首先利用JavaCC和EBNF文法产生了一个语法分析器,用来分析普通文本形式的Java代码,产生符合特定语法结构的语法,同时又在JavaCC的基础上添加了语义的概念即JJTree,通过JJTree的一次转换,这样就将J.

2020-06-22 18:14:44 2920

原创 ceph组件介绍及基于ceph-deploy部署

ceph组件介绍及基于ceph-deploy部署一、基本架构1. 介绍1.1 软件定义存储 -SDS1.2 云存储1.3 下一代统一存储体系架构二、Ceph 架构2.1 Ceph组件2.1 Ceph部署架构三、ceph-deploy部署ceph集群3.1 修改各主机名称3.2 修改node1节点/etc/hosts文件,增加以下内容:3.3 分别这三个节点上存储创建用户且赋予它root权限3.4 在各节点上安装启用软件仓库,启用可选软件库3.5 配置允..

2020-06-15 17:26:04 1491

原创 基于ceph-ansible搭建ceph集群

基于ceph-ansible搭建ceph集群一、环境准备二、说明三、安装前系统环境配置四、升级内核五、安装ceph集群5.1 下载项目5.2 配置ansible5.3 配置ceph-ansible5.4 开始安装六、基于ceph-ansible的ceph-ansible-copilot可视化安装ceph集群6.1 从下载ceph-ansible源文件6.2 copilot可视化配置安装6.3 注意6.4 本人安装资源6.5 参考文档基于ceph..

2020-06-15 17:20:04 4419

原创 CORS实现原理

跨域解决方案CORS1.1 什么是跨域出于浏览器的同源策略限制。同源策略(Sameoriginpolicy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。同源策略会阻止一个域的javascript脚本和另外一个域的内容进行交互。所谓同源(即指在同一个域)就是两个页面具有相同的协议(protocol),主机(host)和端口号(port)如果跨域调用,会出现如下错误:N

2020-06-15 16:59:39 595

原创 Springboot 集成 FastDFS分布式文件存储

1 FastDFS简介1.1 FastDFS体系结构FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。FastDFS 架构包括 Tracker s

2020-06-15 16:55:42 524

原创 docker基本操作

Docker CentOS安装apt-get install -y docker.io运行/etc/init.d/docker start搜索镜像docker search centos下载镜像docker pull centos查看本机镜像docker images删除镜像docker rm运行镜像docker

2020-06-13 22:59:49 78

原创 HashMap原理及实现

title: HashMap原理及实现tags: [算法与数据结构,Java,HashMap]categories: 算法与数据结构什么是hash它将一个长度为二进制通过一个映射关系转换成一个固定长度的二进制值。1.任意长度的二进制2.映射关系(哈希算法–就相当于一个大学里面的学号的一个映射规则)3.固定的二进制(哈希值–相当于我大学里面的学号)任意长度的二进制和固定长度的二进制 是一个一一对应关系固定长度的二进制就相当于一个任意长度的二进制的摘要固定长度的二进制 相当于一个.

2020-06-12 10:42:06 168

原创 字符串相关算法(0-1交换、字符替换和复制、交换星号、子串变位词、单词翻转 )

0-1交换把一个0-1串(只包含0和1的串)进行排序,你可以交换任意两个位置,问最少交换的次数?分析: 快排partition?最左边的那些0和最右边的那些1都可以不管o 00…0001…….0111….1伪代码实现void exchangeo1{ int answer = 0; for(int i=-,j=len-1;i<j;++i,--j){ for(;(i<j)&&(a[i]=='0');++i); f

2020-06-12 10:40:02 1248

原创 栈相关算法(括号匹配 )

stack堆栈是一种特殊的线性表,只允许在表的顶 端top进行插入或者删除操作,是一种操作受 限制的线性表。栈元素服从后进先出原则LIFO——Last In First Out括号匹配给定字符串,仅由"()[]{}"六个字符组成。设 计算法,判断该字符串是否有效。括号必须以正确的顺序配对,如:“()”、“()[]” 是有效的,但“([)]”无效。算法分析在考察第i位字符c与前面的括号是否匹配时:如果c为左括号,开辟缓冲区记录下来,希望c能够 与后面出现的同类型最近右括

2020-06-12 10:39:14 416

原创 数组、链表、斐波那契数列的递归、Reverse数组、Reverse链表、约瑟夫环问题、合并两个排好序

stdafx.h数组链表斐波那契数列的递归Reverse数组Reverse链表约瑟夫环问题合并两个排好序的链表stdafx.h// stdafx.h : 标准系统包含文件的包含文件,// 或是经常使用但不常更改的// 特定于项目的包含文件//#pragma once#include "targetver.h"#include <stdio.h>#include <tchar.h>#include <iostream>#incl.

2020-06-12 10:37:46 146

原创 数组相关算法(局部极小值、第一个缺失的正整数、元素最大间距离(分桶)、只出现1次的数、众数问题、前缀和的应用)

数组简介数组(array)java : [], ArrayListC++ : STL vector, []C: 只有[]理解:输入的数组通常理解为集合,我们自己可以排序,查找注意C++ STL中vector的一种实现数组下标是一种特殊的hash…做计数理解数组与map给数组“顺序”局部极小值一个给定的不包含相同元素的整数数组,每个,局部极小值的定义是一个值比左右相邻的(如果存在)都小的值,求它的一个局部最小值分析:局部最小值的存在性,全部数组的最小值显然是

2020-06-12 10:34:38 181

原创 链表相关算法(链表相加, 链表的部分翻转,链表划分链表划分,排序链表中去重)

链表相加给定两个链表,分别表示两个非负整数。它 们的数字逆序存储在链表中,且每个结点只 存储一个数字,计算两个数的和,并且返回 和的链表头指针如:输入:2→4→3、5→6→4,输出:7→0→8问题分析输入:2->4->3、5->6->4,输出:7->0->8因为两个数都是逆序存储,正好可以从头向 后依次相加,完成“两个数的竖式计算”。typedef struct tagSNode{ int value; tagSnode *pNext;

2020-06-12 10:32:55 134

原创 队列相关算法(最短路径条数问题,拓扑排序)

queue队列是一种特殊的线性表,只允许在表的前端front进行删除操作,在表的后端rear进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列元素服从先进先出原则FIFO——First In First Out最短路径条数问题给定如图所示的无向连通图,假定图中所有边的权值都为1,显然,从源点A到终点T的 最短路径有多条,求不同的最短路径的数目。算法分析权值相同的最短路径问题,则单源点Dijkstra算法退化成BFS广

2020-06-12 10:29:50 334

原创 九大排序算法告诉你什么是内部排序和外部排序

概述排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。我们通常所说的排序算法往往指的是内部排序算法,即数据记录在内存中进行排序。排序算法大体可分为两种:比较排序,时间复杂度O(nlogn) ~ O(n^2)冒泡排序选择排序插入排序归并排序堆排序快速排序非比较排序计数排序基数排序桶排序常见比较排序算法的性能:注意:排序算法的稳定性排序算法稳定性的简单形式化定

2020-06-12 10:25:44 7085 1

原创 Logstash读取kafka到ElasticSearch的配置文档

文章目录一、架构二、input 读取kafka配置2.1、简单配置及说明2.2 protobuf数据反序列化2.2.1 protocol buffer简介2.2.2 安装插件2.2.3 ReleaseRecordES.proto文件2.2.4 protoc命令编译proto文件为ruby文件2.2.5 input.kafka配置protobuf反序列化三、filter对数据源进行过滤3.1 elasticsearch plugin3.2 data plugin3.3 ruby plugin四、output4

2020-06-12 10:06:16 2116

原创 redis 之 五: 集合 set 相关命令

集合 set 相关命令集合的性质: 唯一性,无序性,确定性注: 在string和link的命令中,可以通过range 来访问string中的某几个字符或某几个元素但,因为集合的无序性,无法通过下标或范围来访问部分元素.因此想看元素,要么随机先一个,要么全选sadd key value1 value2作用: 往集合key中增加元素srem value1 value2作用: 删除集合中集为 value1 value2的元素返回值: 忽略不存在的元素后,真正删除掉的元素的个数sp

2020-06-12 10:03:52 143

原创 redis 之四: link 链表结构

lpush key value作用: 把值插入到链接头部rpop key作用: 返回并删除链表尾元素rpush,lpop: 不解释lrange key start stop作用: 返回链表中[start ,stop]中的元素规律: 左数从0开始,右数从-1开始代码练习127.0.0.1:6379> lpush character a(integer) 1127.0.0.1:6379> rpush character b (integer) 2127.0.0

2020-06-12 10:03:00 121

原创 redis 之三: Redis字符串类型的操作

title: redis 之三: Redis字符串类型的操作tags: [redis]categories: redisset key value [ex 秒数] / [px 毫秒数] [nx] /[xx]如: set a 1 ex 10 , 10秒有效Set a 1 px 9000 , 9秒有效注: 如果ex,px同时写,以后面的有效期为准如 set a 1 ex 100 px 9000, 实际有效期是9000毫秒nx: 表示key不存在时,执行操作xx: 表示key存在.

2020-06-12 10:02:23 87

原创 redis 之 二: Redis对于key的操作命令

https://redis.io/commandsString——字符串Hash——字典List——列表Set——集合Sorted Set——有序集合keys pattern 查询相应的key在redis里,允许模糊查询key有3个通配符 *, ? ,[]*: 通配任意多个字符?: 通配单个字符[]: 通配括号内的某1个字符keys *127.0.0.1:6379> set sit www.glodon.com127.0.0.1:6379> .

2020-06-12 10:01:42 166

原创 安装配置及启动连接

redis定义redis是开源,BSD许可,高级的key-value存储系统.可以用来存储字符串,哈希结构,链表,集合,因此,常用来提供数据结构服务.redis和memcached相比,的独特之处:1: redis可以用来做存储(storge), 而memccached是用来做缓存(cache)这个特点主要因为其有”持久化”的功能.2: 存储的数据有”结构”,对于memcached来说,存储的数据,只有1种类型–”字符串”,而redis则可以存储字符串,链表,哈希结构,集合,有序集合.

2020-06-12 09:59:20 115

原创 代码质量检测(jacoco & pmd & pipeline)

代码质量检测一、静态代码分析静态代码分析是指在不运行程序的前提下,对源代码进行分析或检查,范围包括代码风格、可能出现的空指针、代码块大小、重复的代码等。pipeline中,静态代码分析通常被安排在编译阶段之后代码规范检查的方案是使用构建工具或代码分析器进行代码规范检查,如果不通过,pipeline就中止1.1 静态代码分析工具1. PMD可扩展的静态代码分析器,不仅可以对代码风格进行检查,还可以检查设计、多线程、性能等方面的问题1) 在maven项目的pom.xml中加入PMD插件

2020-06-12 09:42:13 2319 2

原创 数据管理

docker 数据管理数据卷docker run -it --name volume-test1 -h nginx -v /data centos-------------h 主机名 -i -t 开一个 tty 终端,保持交互模式,这两个一般共同使用-p [host_port]:[container_port] 映射 HOST 端口到容器-v [host-path]:[co

2017-05-24 11:48:41 169

原创 Docker镜像构建-Dockerfile

Docker镜像构建-Dockerfile基础镜像信息维护者信息镜像操作命令容器启动时执行命令mkdir /opt/docker-filecd /opt/docker-filemkdir nginxcd nginxpwd /opt/docker-file/nginx--------vim Dockerfile############################

2017-05-24 11:48:14 234

原创 Docker(nginx)镜像构建

1.下载centos镜像docker pull centos2.运行镜像docker run --name nginx-man -it centos3.安装wget软件包yum install -y wget gcc gcc-c++ make openssl-devel4.下载nginx安装包header 1header 2

2017-05-24 11:47:20 1625

原创 docker基本操作

Docker CentOS安装apt-get install -y docker.io运行/etc/init.d/docker start搜索镜像docker search centos下载镜像docker pull centos查看本机镜像docker images删除镜像docker rm运行镜像docker

2017-05-24 11:46:47 182

原创 数据存储

常见布局相对布局RelativeLayout组件默认左对齐、顶部对齐设置组件在指定组件的右边 android:layout_toRightOf="@id/tv1"设置在指定组件的下边android:layout_below="@id/tv1"设置右对齐父元素android:layout_alignParentRight="true"

2017-05-24 11:45:17 156

原创 Android应用开发-网络编程

HttpClient发送get请求创建一个客户端对象HttpClient client = new DefaultHttpClient();创建一个get请求对象HttpGet hg = new HttpGet(path);发送get请求,建立连接,返回响应头对象HttpResponse hr = hc.execute(hg);获取状态行对象

2017-05-24 11:43:44 160

原创 Android应用开发-数据存储和界面展现

测试黑盒测试测试逻辑业务白盒测试测试逻辑方法根据测试粒度方法测试:function test单元测试:unit test集成测试:integration test系统测试:system test根据测试暴力程度冒烟测试:smoke test压力测试:pressure test单元测试junit定义一个类继承

2017-05-24 11:42:27 282

原创 vc++6.0贪吃蛇

vc++6.0贪吃蛇<br /><br /> <br />#include<stdio.h><br /><br />#include<stdlib.h><br />#include<time.h><br />#include<conio.h><br />#include<dos.h><br />#include<math.h><br />//<br />int m=0;<br />//int flag=0;<br />char ch = 's', di;<br />int score = 0;  //分数<

2010-12-04 17:12:00 1204 1

hsdis-amd64.zip

1. 解压压缩文件,讲解压的内容放到`JRE_HOME/bin/server`路径下 2. 在运行main函数之前,加入虚拟机参数 > -server -Xcomp -XX:+UnlockDiagnosticVMOptions -XX:+PrintAssembly -XX:CompileCommand=compileonly,*App.getInstance(替换成实际运行的代码)

2020-06-23

FastStone Capture 9.2.zip

截图工具

2020-06-15

checkstyle-8.31-all.jar

java 代码风格检测

2020-06-15

企业短信群发系统

如果公司想通知远在外地的职员回公司报到,传统方法是拨打每个职员的电话进行通知,现在开发出企业短信群发系统便可以编写一条告知职员回公司报到的短信,然后添加所有外地职员的电话号码,统一发送出去,大大的提高了办公的效率。通过实际的需求分析,开发出本套企业短信群发系统。本系统主要利用硬件短信猫发送短信,通过本系统用户完全可以对指定的一组电话号码进行短信的群发,加快了办公的效率。系统自身还有对已发短信的查询功能以及查看SIM卡中收到的短信,还为用户提供了电话簿的功能,通过电话簿管理,可以将比较常用的联系人及其手机号码添加到数据库中,方便在发送短信时添加接收人。系统安全方面也做了考虑,首先用户要通过登录模块验证成功之后才可以进入系统的主窗体,如果用户要暂时的离开,可以通过系统菜单栏中的“锁定系统”命令锁定系统界面,如果想再次使用,需要输入登录密码。为了减轻用户文字输入量,系统提供了常用短语模块,通过此模块用户可以选择一些常用的短语作为短信的内容,同时还可以自定义一些常用的短语以及删除一些不想要的短语。

2012-04-14

vc++6.0贪吃蛇

纯dos下运行,vc++6.0贪吃蛇 初学者易懂

2010-12-06

VC++6.0日历从公元元年到永远

dos下运行的VC++6.0日历从公元元年到永远,并标有节日

2010-11-30

空空如也

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

TA关注的人

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