自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

陈家老二的博客

用于记录学习中的点点滴滴,努力成长

  • 博客(41)
  • 收藏
  • 关注

原创 linux 安装docker及docker compose

使用 root 权限登录 Centos。确保 yum 包更新到最新。卸载旧版本(如果安装过旧版本的话)安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的设置yum源可以查看所有仓库中所有docker版本,并选择特定版本安装安装docker启动并加入开机启动验证安装是否成功(有client和service两部分表示docker安装启动都成功了)到此安装成功...

2022-06-20 11:50:18 684

原创 windows java生成 jks文件

windows java生成 jks文件//xxxx为自定义名字 123456 为自定义密码//生成jks文件1. keytool -genkeypair -alias xxxxx -keyalg RSA -keypass 123456 -storepass 123456 -keyalg RSA -keysize 2048 -keystore xxxxx.jks//转化jks2. keytool -importkeystore -srckeystore xxxxx.jks -destkeyst

2022-03-23 09:48:51 1798

原创 java docx 转html

java docx 转html概述具体步骤1.引入jar包2.编写代码概述在网上找了一些docx转html发现很多都有问题,自己在踩坑之后再次记录一下具体步骤1.引入jar包 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>

2021-11-09 17:33:58 790

原创 wps 批量doc转docx 使用js宏处理

直接将此函数代码粘贴即可使用function docChangedocx(){ var myDialog = Application.FileDialog(msoFileDialogFilePicker) myDialog .Filters.Clear() myDialog.Filters.Add("所有 WORD97-2003 文件", "*.doc", 1 ) myDialog.AllowMultiSelect=true myDialog.Show() for(var i=1;i&lt

2021-11-09 17:23:54 2147 1

原创 jenkins 删除 构建历史

jenkins 删除 构建历史1.jenkins 未提供批量删除项目构建历史的操作按钮,但可以使用脚本进行删除2.脚本执行位置2.1 中文版位置2.2 英文版位置执行脚本1.jenkins 未提供批量删除项目构建历史的操作按钮,但可以使用脚本进行删除2.脚本执行位置2.1 中文版位置2.2 英文版位置执行脚本def jobName = "xx_项目" def maxNumber = 100 Jenkins.instance.getItemByFullName(jobName).bu

2021-10-28 12:04:50 836

原创 Linux编译安装PHP7.4.24及启动

Linux编译安装PHP7.4.24及启动1. 下载安装包PHP安装包2. 配置安装包2.1 先安装前置插件,不管有没有都安装一下2.2 配置php2.3 执行配置命令可能会出现如下错误2.4 运行php的配置命令出现如下示例,即为配置成功3编译安装包3.1 执行编译命令(可能要花一点时间)3.2 在之前编译的源码包中,找到 php.ini-production,复制到/usr/local/php下,并改名为php.ini:3.2 修改配置文件3.3 新建用户组及用户4. 启动停止php-fpm4.1 启

2021-10-22 11:18:54 12759 2

原创 设计模式-装饰者模式(结构型)

设计模式-装饰者模式简述需求不使用装饰者模式UML类图代码使用装饰者模式对上述需求进行改进UML类图代码装饰者模式的优缺点及应用场景应用场景优缺点装饰者模式总结要点:工作中的使用java I/omyBatis Cache简述动态给一个对象添加一些额外的职责.使用装饰者模式相比用生成子类方式达到功能的扩充显得更为灵活。装饰者模式又称为包装模式,它主要是为了扩展对象的功能,通过持有对象的引用,把对象包装起来,可以在调用对象的方法之前或者之后增加新的功能,以达到给对象添加一些额外的职责,就像为对象添加了一些

2021-09-27 17:56:06 123

原创 SpringBoot 项目在静态工具类中注入Spring所管理的bean

SpringBoot 项目在静态工具类中注入Spring所管理的bean问题:静态属性不能直接注入第一种方式使用@Autowired第二种方式使用@Resource第三种方式直接使用 SpringContextHolder问题:静态属性不能直接注入第一种方式使用@Autowiredpublic class Util{ private static RedisTemplate redisTemplate; @Autowired public void setRedisTemp

2021-09-27 12:05:09 2026

原创 设计模式之策略模式+工厂模式+模板模式结合

设计模式之策略模式+模板模式为什么总是学不好设计模式从"登录功能"中发现问题。首先我们简单的了解功能需求:于是你开始干活了:1、控制层代码如下,根据不同的登录方式调用不同的服务层方法:2、服务层提供两种登录方式,并对登录业务逻辑进行处理:3、持久层,负责用户的数据查询和变更。4、还有Model从代码中发现问题第一次优化(代码抽离)第二次优化(增加策略模式)1、在controller增加一个条件判断,调用新增加手势登录方法2、service 里增加手势登录的方法继续从上面代码中发现问题:策略模式的定义在登录功

2021-09-27 10:46:49 925 3

原创 设计模式-工厂模式(创建型)

工厂模式简述工厂模式可以分为三类:创建型模式工厂模式优点:适用场景一、简单工厂模式1.1定义1.2简单工厂模式实现方式UML 类图实例1.3 简单工厂模式存在的问题1.4 简单工厂模式总结二、工厂方法模式2.1 定义2.2 工厂方法模式实现方式UML类图实例2.3 工厂方法模式适用场景使用场景2.4 工厂方法模式总结优点:缺点:三、抽象工厂模式3.1 定义抽象工厂模式实现方式UML类图实例3.3 抽象工厂模式适用场景“开闭原则”的倾斜性3.4 抽象工厂模式总结优点:缺点:工厂模式的退化四、我们身边的工厂模式

2021-09-26 16:42:12 284

原创 mybatisplus解决分页最多500条数据

mybatisplus解决分页最多500条数据问题:当设置分页参数size超过500时,记录最多500条原因:MyBatis-Plus低版本的PaginationInterceptor,定义了默认limit为500。当size超出limit时设置size为limit的值解决方案1.如果不能切换到mybatis-plus高级版本,使用以下解决方案1.1 配置分页插件时重新设置limit的值1.2 或者在分页查询时,对分页条件进行处理2. 切换到mybatis-plus高级版本,配置新版分页插件问题:当设置分

2021-09-24 14:56:00 9822 4

原创 生成nginx配置地址

nginx配置地址

2021-09-23 10:20:21 118

原创 HttpServletRequest获取头部中文参数乱码

HttpServletRequest获取头部中文参数乱码问题:通过请求头传递中文参数,获取时乱码原因:请求头不能传递中文参数解决办法,通过将参数编解码的方式解决传递中文参数乱码问题放入时进行编码:使用时解码:其他情况传递请求头传递中文,也要编解码。如前后台交互设置请求头问题:通过请求头传递中文参数,获取时乱码原因:请求头不能传递中文参数解决办法,通过将参数编解码的方式解决传递中文参数乱码问题放入时进行编码: String username="用户名"; t

2021-09-22 16:11:10 1445

原创 linux 查找文件及根据条件搜索文件内容

linux 查找搜索文件及文件内容搜索文件1.使用 find 命令Linux find命令可以用不同的搜索标准如名字、类型、所属人、大小等来搜索目录树。基本语法如下:参数说明实例2.使用locate命令Linux locate命令用于查找符合条件的文档,他会去保存文档和目录名称的数据库内,查找合乎范本样式条件的文档或目录。基本语法如下:参数说明实例附加说明3.使用slocate命令Linux slocate命令查找文件或目录。slocate本身具有一个数据库,里面存放了系统中文件与目录的相关信息。语法如下:

2021-09-18 18:21:34 10096

原创 修改nginx对http请求数据大小限制

修改nginx对http请求数据大小限制问题发现问题解决问题发现公司业务在进行大文件上传时,发现大文件时,提示请求太大 413 request send too large查看项目日志未发现错误,后来想到是不是nginx限制了请求大小查看nginx 日志发现问题解决在网上找到修改请求数据大小限制的配置,如下:client_max_body_size 1000m;重启nginx$nginx -s reload ...

2021-09-16 18:12:16 2247

原创 Apache Commons Compress介绍-Zip压缩解压

Apache Commons Compress介绍-Zip压缩解压简述为什么使用Apache Commons Compress在使用java自带的ZipFile处理zip文件时报如下错误java.lang.IllegalArgumentException: MALFORMED使用Apache commons-compress处理zip引入Apache commons-compressZipFile随机访问:ZipArchiveInputStream顺序访问:分卷文件解压:压缩总结简述Apache Co

2021-09-16 17:31:45 4181 2

原创 正则表达式 - 匹配规则

正则表达式 - 匹配规则基本模式匹配字符簇确定重复出现基本模式匹配一切从最基本的开始。模式,是正则表达式最基本的元素,它们是一组描述字符串特征的字符。模式可以很简单,由普通的字符串组成,也可以非常复杂,往往用特殊的字符表示一个范围内的字符、重复出现,或表示上下文。^once这个模式包含一个特殊的字符 ^,表示该模式只匹配那些以 once 开头的字符串。例如该模式与字符串 “once upon a time” 匹配,与 “There once was a man from NewYork” 不匹配。

2021-09-15 11:58:54 195

原创 正则表达式 - 运算符优先级

正则表达式 - 运算符优先级简述运算符表简述正则表达式从左到右进行计算,并遵循优先级顺序,这与算术表达式非常类似。相同优先级的从左到右进行运算,不同优先级的运算先高后低。运算符表下表从最高到最低说明了各种正则表达式运算符的优先级顺序:运算符描述\转义符(), (?:), (?=), []圆括号和方括号*, +, ?, {n}, {n,}, {n,m}限定符^, $, \任何元字符、任何字符定位点和序列(即:位置和顺序)|替换,“或"操作字符具

2021-09-15 11:27:57 691

原创 正则表达式 - 元字符

正则表达式 - 元字符简述元字符表三级目录简述正则表达式语言由两种基本字符类型组成:原义(正常)文本字符和元字符。元字符使正则表达式具有处理能力。所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符,可以用来规定其前导字符(即位于元字符前面的字符)在目标对象中的出现模式。元字符表下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为:字符描述\将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,‘n’ 匹配字符 “n”。’\n

2021-09-15 11:11:15 330

原创 正则表达式 - 修饰符(标记)

正则表达式 - 修饰符简述常用的修饰符g 修饰符i 修饰符m 修饰符s 修饰符简述标记也称为修饰符,正则表达式的标记用于指定额外的匹配策略。标记不写在正则表达式里,标记位于表达式之外,格式如下:[a-z]/g或[0-9]{1,5}/g常用的修饰符修饰符含义描述iignore - 不区分大小写将匹配设置为不区分大小写,搜索时不区分大小写: A 和 a 没有区别。gglobal - 全局匹配查找所有的匹配项。mmulti line - 多行匹配使边界字符

2021-09-15 10:34:02 400

原创 常用正则表达式

常用正则表达式一.校验数字的表达式二.校验字符的表达式三. 特殊需求表达式一.校验数字的表达式数字:^[0-9]*$ n位的数字:^\d{n}$ 至少n位的数字:^\d{n,}$ m-n位的数字:^\d{m,n}$零和非零开头的数字:^(0|[1-9][0-9]*)$非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(\.[0-9]{1,2})?$带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})$ 正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$有

2021-09-14 18:10:13 78

原创 正则表达式语法学习

正则表达式基本学习简述为什么使用正则表达式?发展历史正则表达式 - 语法普通字符非打印字符特殊字符限定符定位符选择简述正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。为什么使用正则表达式?典型的搜索和替换操作要求您提供与预期的搜索结果匹配的确切文本。虽然这种技术对于对静态文本执行简单搜索和替换任务可能已经足够了,但它缺乏灵活性,若采用这种方

2021-09-14 17:37:50 245

原创 正则表达式的先行断言(lookahead)和后行断言(lookbehind)

正则表达式的先行断言和后行断言简述(?=pattern) 正向先行断言(?!pattern) 负向先行断言(?<=pattern) 正向后行断言(?<!pattern) 负向后行断言对于这 4 个断言的理解,可以从两个方面入手:对这 4 个断言形式的记忆:例子简述原文地址正则表达式的先行断言和后行断言一共有 4 种形式:(?=pattern) 零宽正向先行断言(zero-width positive lookahead assertion)(?!pattern) 零宽负向先行断言(z

2021-09-14 17:34:31 1109

原创 java 获取 request

第一种,通过springmvc,参数注入@PostMapping(value = "/xxx")public Result xxx(HttpServletRequest request) { }通过RequestContextHolder获取这种方式在项目任何地方都可以拿到,只要Request已经注入 private static HttpServletRequest getRequest() { ServletRequestAttributes attributes

2021-09-10 15:35:29 3533

原创 intellij idea快速切换文本大小写

背景定义常量时,需要将字符串变量名改成全部大写,如果手工一个个字母改,很容易出错。解决方案访问菜单“Edit”>“Toggle Case”除了菜单,也可以用快捷键,默认是“Ctrl+Shift+U”.

2021-09-10 15:14:42 879

转载 Elasticsearch 索引设计

随着 Elastic 的上市,ELK Stack 不仅在 BAT 的大公司得到长足的发展,而且在各个中小公司都得到非常广泛的应用,甚至连“婚庆网站”都开始使用 Elasticsearch 了。随之而来的是 Elasticsearch 相关部署、框架、性能优化的文章早已铺天盖地。初学者甚至会进入幻觉——“一键部署、导入数据、检索&聚合、动态扩展, So Easy,妈妈再也不用担心我的 Elastic 学习”!但,实际上呢?仅就 Elasticsearch 索引设计,请回答如下几个问题:每天几百

2021-09-10 14:23:01 1010

原创 java 使用 jsoup解析html

使用JsoupJsoup介绍简介Jsoup的主要功能引入Jsoupapi文档使用jsoupJsoup介绍简介 jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可 通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据Jsoup的主要功能从一个URL,文件或字符串中解析HTML使用DOM或CSS选择器来查找、取出数据可操作HTML元素、属性、文本注意:jsoup是基于MIT协议发布的,可放心使用于商业项目

2021-09-10 14:16:08 719

原创 java 不需要解压zip,读取 zip 文件内的各种文件

package com.chenhong;import java.io.*;import java.util.zip.ZipEntry;import java.util.zip.ZipFile;import java.util.zip.ZipInputStream;public class ZipTest { public static void main(String[] args) throws Exception { try { String

2021-09-10 11:33:36 1141

原创 java 通过正则表达式判断字符串是否以数字开头

String str="123123ssdfssss"; Pattern pattern = Pattern.compile("^(\\d+)(.*)"); Matcher matcher = pattern.matcher(str); if (matcher.matches()) { System.out.println(matcher.group(1));// =123123 System.out...

2021-09-10 11:28:32 4964

原创 java 去除空格,包括全角,tab,等等其他类型空格

```java private static String replaceAll(String str) { return str.replaceAll("[\\u00a0*|\\t*| *| *| *|//s*]*", ""); }

2021-09-06 10:45:16 1092

原创 elasticsearch查询 match 与term的区别

1.首先使用默认分词器,对数据进行处理,查看term 与match区别//默认分词器POST /_analyze{ "text": "我爱北京天安门", "analyzer": "standard"}//结果{ "tokens" : [ { "token" : "我", "start_offset" : 0, "end_offset" : 1, "type" : "<IDEOGRAPHIC>", "

2021-03-19 12:37:27 340

原创 elasticsearch 查询操作 (学习自己做点笔记)

索引twitter中put _id 为1的如果存在则更新_id为1的,不存在则添加_id为1的文档PUT twitter/_doc/1{ "user": "GB", "uid": 1, "city": "Beijing", "province": "Beijing", "country": "China"}POST twitter/_doc/1{ "user": "GB", "uid": 1, "city": "Beijing", "province": "...

2021-03-05 22:33:30 723

原创 ElasticSearch 安装

1.进入elastic官网https://www.elastic.co/cn/downloads/elasticsearch2.下载当前版本3.安装elasticSearch历史版本4.下载elasticsearch安装包yum -y install wget----------------------------(未安装wget请先安装)wget https://artifacts.elastic.co/downloads/elasticsearch/elast...

2021-03-04 14:03:55 715 1

原创 linux vi和Vim编辑器

linux vi和Vim编辑器

2021-03-02 23:49:10 85

原创 设计模式之策略模式

引言:何为策略模式?策略模式是为了解决哪种类型的问题?策略模式:在策略模式中,一个类的行为或算法可以在运行时更改。这种类型的设计模式属于行为型模式。在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象的改变而改变的context对象。策略对象改变context对象的执行算法。意图:定义一系列算法,把他们一个个封账起来。并且使他们可以相互替换主要解决:在有多种算法相似的情况下,解决多重if。。 else的难以维护的问题优点:1. 算法可以自由切换。2.避免使用多重判断 。3.扩展性.

2021-02-26 16:47:29 220

原创 Linux的目录结构

记住linux一句话,在linux世界里,一切皆文件bin:是Binary的缩写,存放linux常用指令boot: 存放的是启动linux时使用的一些核心文件,包括一些链接文件以及镜像文件dev:类似于windows的设备管理器,把所有的硬件用文件的形式存储ess:待补充etc:所有的系统管理所需要的配置文件和子目录,比如mysql 的my.confhome:存放普通用户的主目录,在linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名lib:系统开机所需要最基本

2021-02-23 16:46:28 75

原创 element-ui时间组件使用

element-ui时间组件使用https://element.eleme.cn/#/zh-CN/component/datetime-picker 进入官网 使用组件代码<el-date-picker v-model="value1" type="datetime" placeholder="选择日期时间"> </el-date-picker> 在与后台交互时,时间组件需要定义value-format 属性 value-format="yyyy-MM-dd HH:...

2021-01-11 15:34:08 909

原创 Linux下的tar压缩解压缩命令详解

tar-c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。-z:有gzip属性的-j:有bz2属性的-Z:有compress属性的-v:显示所有过程-O:将文件解开到标准输出下面的参数-f是必须的-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。# tar -cf all.tar .

2020-06-29 17:37:36 123

原创 js遍历list及map

工作笔记var list1 = ["number","name"];var list2 = ["36","Crown","15","Faker","Swift","68","Dandy"];var map_demo = { name: "John", lang: "JS" };1.最常用的for循环for(var i=0;i<list2.length;i++){console.info(i +":"+ list2 [i]);}改进:这里可以将list2.leng...

2020-05-28 17:40:03 7529

原创 关于设计模式文章地址

java设计模式超详细

2020-05-09 10:23:24 138

空空如也

空空如也

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

TA关注的人

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