自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

lpfasd123的博客

找一个你爱聊的人结婚,因为当年龄大了以后,你会发觉喜欢聊天是一个人最大的优点!

  • 博客(174)
  • 问答 (3)
  • 收藏
  • 关注

原创 ACTable开源框架的使用及异常

###ACTable是对Mybatis做的增强功能,支持SpringBoot以及传统的SpringMvc架构,配置简单,使用方便。主要是自动生成数据库表,直接修改java代码,数据库就会对应的变化,省去在调整数据库表的问题,在开发阶段非常实用。####本项目使用的springboot3.2.2版本,集成Mybatis,Mybatis-plus, ACTable组件.

2024-02-12 08:42:39 364

原创 SpringBoot 3.0.x使用SpringDoc

为什么使用SpringDoc在Springfox3.0停更的两年里,SpringBoot进入3.0时代, SpringFox出现越来越多的问题,最为明显的就是解析器的问题,已经在上文 中解释清楚,这里就不再赘述。SpringDoc是Spring官方推荐的API,相信不会轻易停更。如何引入SpringDocSpringDoc有多个版本,如果你使用的是SpringBoot3.0,请确保Spri...

2023-01-23 20:50:12 2497

原创 docker-compose 镜像间的依赖关系

问题在编写项目时,镜像之间存在依赖关系,在docker-compose.yml中大多都使用depends on来表示相互之间的依赖,那么问题来了,depends on表示的只是启动前后的关系,而不是镜像进入ready状态,很有可能前启动的要比后启动的跑得慢,导致项目启动失败解决办法当镜像有依赖关系时,可将其启动起来后等待状态,并不停的ping所需服务接口,当ping通之后,在启动相关服务。...

2021-05-27 15:01:30 1858

原创 架构师面试

正在做的项目,微服务,对业务的分析,业务怎么使用中间件,spring cloud,boot关系怎么看,注册中心eureka, zookeepereureka是基于ap的。zookeeper是基于cp的。eureka保证apeureka优先保证可用性。在Eureka平台中,如果某台服务器宕机,Eureka不会有类似于ZooKeeper的选举leader的过程;客户端请求会自动切换 到...

2021-05-17 14:47:47 278

原创 linux开机自动启动程序

1.cornlinux内置的cron进程能帮我们实现这些需求,cron搭配shell脚本,非常复杂的指令也没有问题。使用 crontab命令2. /etc/rc.local编辑rc.local文件,添加shell命令为了文件能够执行,应修改权限chmod +x /etc/rc.d/rc.local3. 将shell文件放到/etc/init.d目录下/etc/init.d 是 /e...

2020-12-10 22:35:09 284

原创 mysql utf8 utf8mb4

MySQL在 5.5.3 之后增加了 utf8mb4 字符编码,mb4即 most bytes 4。简单说 utf8mb4 是 utf8 的超集并完全兼容utf8,能够用四个字节存储更多的字符。The utfmb4 character set has these characteristics:Supports BMP and supplementary characters.Requi...

2020-08-11 18:25:57 116

原创 Eureka在相互注册形成高可用时DS Replicas为空

Eureka在相互注册形成高可用时DS Replicas为空›截图原本在同一台服务器上,以不同的端口来搭建集群,ip 或者 主机名相同时,无法形成副本。所以将其中一台迁移到了另外的服务器上了...

2020-07-15 17:37:55 1199

原创 SpringBoot2.0中Hikari

在SpringBoot2.0的数据库默认连接池是Hikari, 号称“史上最快连接池”Hikari配置文件spring: datasource: url: jdbc:mysql://******:3306/***?useUnicode=true&characterEncoding=UTF-8 username: username passwor...

2020-06-15 15:00:22 385

原创 Dockerfile

因es安装了些自定义插件,且重建index比较麻烦,自制了个imageDockerfile如下FROM adoptopenjdk/openjdk8MAINTAINER alpharCOPY ./elasticsearch-6.1.1 /usr/local/elasticsearch-6.1.1#vm.max_map_count 数目RUN sysctl -w vm.max_map_co...

2020-06-10 16:40:10 111

原创 docker-compose配置文件

# yaml 配置 # 指定 compose 文件的版本version: '3'services: redis: # 指定 docker 镜像, 可以是远程仓库镜像、本地镜像 image: redis ports: - "6379:6379" networks: - app nginx: image: nginx ...

2020-06-10 16:24:19 416

原创 docker/docker-compose的命令

docker 命令容器生命周期管理 create Create a new container run Run a command in a new container restart Restart one or more containers rm Remove one or more containers pause /unpa...

2020-06-10 15:53:22 166

原创 docker/docker-compose安装

安装卸载旧版本$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ doc...

2020-06-10 13:57:24 223

原创 JS中的函数

函数是对象,连接到Function.prototype(该对象连接到Object.prototype),并在创建时附加两个隐藏属性:函数的上下文和实现函数行为的代码。var add = function(a, b){ return a + b;}调用调用一个函数会暂停当前函数的执行,传递控制权和参数给新函数。除了声明时定义的形式参数,每个函数还会接收两个参数:this和argumen...

2020-05-22 14:40:07 202

原创 JS中的对象,以及原型

JavaScript的简单数据类型包括数字,字符串,布尔值(true/false), null值和undefined值。其他所有值都是对象。数字,字符串,布尔值也有方法,但是他们是不可变的。对象是可变的键控集合,是属性的容器。属性的名字是包括空字符长在内的任意字符串(如果属性名是一个合法的JavaScript标识符,且不是保留字,则不需要用引号包裹。反之,则必须用引号包裹)。属性值可以是除了un...

2020-05-21 16:37:49 227

原创 ElasticSearch ingest-geoip插件

ElasticSearch可以使用ingest-geoip插件可以对ip进行地理位置分析这个插件需要Maxmind的GeoLite2 City,GeoLite2国家和GeoLite2 ASN geoip2数据库。有关更多详细信息,请参见http://dev.maxmind.com/geoip/geoip2/geolite2/,现在需要注册才能下载!该geoip处理器可以与Maxmind的其他G...

2020-05-20 15:24:48 1924

原创 ElasticSearch Clients (Java)

SpringBoot项目中集成ElasticSearchClient (version = 6.1.1),该版本相对老旧,对某些api的支持并不好,有条件的可以及时更新。6.17.86.17.8可见差别还是挺大的。ps:本文使用6.1.1配置import org.apache.logging.log4j.LogManager;impor...

2020-05-19 17:18:07 368

原创 ElasticSearch index.max_result_window

当用elasticsearch进行深度分页查询时的size-from大于10000的时候,就会报错“org.elasticsearch.search.query.QueryPhaseExecutionException”,Caused by: org.elasticsearch.search.query.QueryPhaseExecutionException: Result window is...

2020-05-15 17:36:45 2417

原创 ElasticSearch gc overhead

在实际使用中经常会有gc overhead异常,其原因是es的内存不足,在进行full gc时资源使用过多,导致心跳检测无法通过,被剔除集群,导致NoNodeAvailableException。如图:gc异常.png在实际使用中,有以下几种处理方法:1.增大jvm内存,这样使用gc的频次减少,但是full gc的时间更长2.增加心跳检测的timeout时间,以避免检测节点...

2020-05-08 15:21:01 2858

原创 Springboot2.0配置fastjson

package com.example.web.config;import com.alibaba.fastjson.serializer.SerializerFeature;import com.alibaba.fastjson.support.config.FastJsonConfig;import com.alibaba.fastjson.support.spring...

2020-01-08 14:18:33 372

原创 Java安全(未完待续)

加密, 解密凯撒密码左右位移向右位移三位a-> db -> ec -> f凯撒密码--频度分析法例如:在英文中 e 出现的频率是最高的将出现最多的字母付给e,总结规律,并推广到全文,再根据合理性确认对称加密加密和解密用的都是同一密钥。如: IBM 的 DES加密UTF-8是一种变长的编码方式,英文1个字节,中文三个字节将原文的二进制文...

2019-12-30 20:00:37 109

原创 spring Redis 配置

package com.godbird.near.config;import com.fasterxml.jackson.annotation.JsonAutoDetect;import com.fasterxml.jackson.annotation.PropertyAccessor;import com.fasterxml.jackson.databind.Object...

2019-11-26 11:56:27 100

原创 mongodb 时间格式的转换

mongodb内置的时间类是ISODate,当我们使用springdatamongo的时候,Spring 会将java.util.Date一直对应而要想在数据库中对时间格式做相互转换的话,要注意时以下问题new Date()可以接受多种参数,如:YYYY-mm-ddYYYY-mm-ddTHH:MM:ss.YYYY-mm-ddTHH:MM:ssZinteger标准...

2019-10-30 18:53:00 6093

原创 springboot2.2.0升级过程

项目升级,springboot由1.5升级到2.2一、SpringBootRedis在springboot2.0之后, springbootredis默认使用Lettuce, springbootredis1.0使用jedis详情可见SpringBoot2.0Redis配置netty在升级之后redis和elastic都使用了netty,区别于之前的1.5,1.注意版本...

2019-10-24 18:03:31 5379 5

原创 SpringBoot2.0Redis配置

项目升级到2.0之后,有些配置发生了变化在springboot2.0之后, springbootredis默认使用Lettuce, springbootredis1.0使用jedisJedis和Lettuce都是Redis ClientJedis 是直连模式,在多个线程间共享一个 Jedis 实例时是线程不安全的,如果想要在多线程环境下使用 Jedis,需要使用连接池,...

2019-10-14 16:35:42 263

原创 阿里云mongodb使用遇到的问题

阿里云mongodb禁用了一些危险操作例如:copydb,clone,clean,cloneCollection详细情况可以查看文档云数据库MongoDB版支持及限制哪些命令虽然安全了,但是给我们的操作带来了很多不便笔者遇到问题1.复制dbcopydatabase不能用了,clone也不能用,那只好另辟蹊径在数据迁移时,发现mongodump和mongorestore...

2019-10-09 15:42:48 708

原创 java回头看系列之对象

面向对象程序设计(Object-oriented Programming, OOP)所有编程语言都提供抽象(abstraction)机制。解决的问题的复杂性直接取决于抽象的类型和质量。面向对象方式(Object-oriented approach)的实质是:程序可以通过添加新类型的对象使自身适用于某个特定问题。。因此,当你在阅读描述解决方案的代码的同时,也是在阅读问题的表述。...

2019-09-27 14:41:29 107

原创 Redis共享数据时的异常

多个项目同时使用一个redis,数据共享依赖项目a使用<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47</version><...

2019-09-27 14:41:23 350

原创 图片叠加到高德地图

使用地图拾取工具获取要覆盖区域的左下角,右上角的经纬度坐标;var imageLayer = new AMap.ImageLayer({ url: 'demo.png', bounds: new AMap.Bounds( [119.0588, 34.4562], //左下角 [119.0777, 34.46...

2019-09-27 14:41:11 1389

原创 mongo配置多数据源

mongodb配置多个数据源直接上代码package com.kmind;import com.mongodb.MongoClientURI;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.Bean;impor...

2019-09-27 14:40:57 360

原创 java常见题目总结1

1.redis内存满了后,内存淘汰策略内存淘汰策略默认是noeviction,LRU算法,least RecentlyUsed,最近最少使用算法。也就是说默认删除最近最少使用的键。2.redis的持久化机制,以及应用场景Redis提供 RDB 和 AOF 两种持久化机制 , 有了持久化机制我们基本上就可以避免进程异常退出时所造成的数据丢失的问题了,Redis...

2019-09-27 14:40:13 224

原创 flutter中Provider详解

为什么我们需要状态管理如果应用足够简单,Flutter 作为一个声明式框架,你或许只需要将 数据 映射成 视图 就可以了。你可能并不需要状态管理,就像下面这样。image.png但是随着功能的增加,你的应用程序将会有几十个甚至上百个状态。这个时候你的应用应该会是这样。image.png这实在是太复杂了!而且还会有多个页面共享同一个状态,需要同步状...

2019-09-27 14:39:50 25377 4

原创 Elacsearch Down掉节点之后,Elacsearch-Head链接异常

今天发现mongo-connector发生异常,将数据从mongo同步到es失败,应用Elacsearch-Head链接发生503异常。查看进程es主节点存活,4节点只剩余主节点存活应用查询查询依然有效新数据写入失败原因配置文件中有一条discovery.zen.minimum_master_nodes: 2当节点只剩余一个节点时,已经不能满足这个条件,所以导致...

2019-09-27 14:39:36 192

原创 Redis的发布订阅以及Java实现

转自订阅与发布Redis 通过 PUBLISH 、 SUBSCRIBE等命令实现了订阅与发布模式, 这个功能提供两种信息机制, 分别是订阅/发布到频道和订阅/发布到模式, 下文先讨论订阅/发布到频道的实现, 再讨论订阅/发布到模式的实现。频道的订阅与信息发送Redis 的SUBSCRIBE命令可以让客户端订阅任意数量的频道, 每当有新信息发送到被订...

2019-07-24 16:52:00 343

原创 spring aop

AOP全称是Aspect Oriented Programing,通常译为面向切面编程。几个重要术语:Joinpoint、Pointcut、AdviceJoinpoint:连接点,如类的某个方法调用前、调用后、抛出异常等,Spring仅支持方法的连接点。Pointcut:切点,例如下文中的 "execution(( com.companyserve...

2019-07-20 16:46:00 96

原创 git常用命令表

git常用命令表【git 删除本地分支】git branch -D br【git 删除远程分支】git push origin :br (origin 后面有空格)git代码库回滚: 指的是将代码库某分支退回到以前的某个commit id【本地代码库回滚】:git reset --hard commit-id :回滚到commi...

2019-07-20 13:22:00 78

原创 java中自定义注解

常用注解@Override,表示当前的方法定义将覆盖超类中的方法。@Deprecated,使用了注解为它的元素编译器将发出警告,因为注解@Deprecated是不赞成使用的代码,被弃用的代码。@SuppressWarnings,关闭不当编辑器警告信息。Java还提供了4中注解,专门负责新注解的创建:@Target:表示该注解可以用于什么地...

2019-07-20 10:56:00 93

原创 java实现微信小程序内容安全检测

首先吐槽下小程序的api写的si一样下面是正题:公司小程序审核多次不过,沟通后确认是用户ugc没有做内容安全检测;小程序的内容安全1.imgSecCheck 图片检测a.图片智能鉴黄:涉及拍照的工具类应用(如美拍,识图类应用)用户拍照上传检测;电商类商品上架图片检测;媒体类用户文章里的图片检测等;b.敏感人脸识别:用户头像;媒体类用户文章里的...

2019-07-19 19:24:00 4463 5

原创 es 添加节点

概述(elasticsearch-6.1.1)当修改配置时可能需要重启集群才生效,或者集群发生严重错误无法恢复时都可能需要重启集群一个集群节点重启前要先临时禁用自动分配,设置cluster.routing.allocation.enable为none,否则节点停止后,当前节点的分片会自动分配到其他节点上,本节点启动后需要等其他节点RECOVERING后才...

2019-07-10 14:27:00 4062

原创 Mongodb一些记录3

如何防范攻击1.做好访问认证,打开你的MongoDB配置文件(.conf),设置为auth=true2.做好防火墙的设置,建议管理者关闭27017端口的访问3.Bind_ip 绑定内网ip访问4.做好升级,请管理者将软件升级到最新版SpringBoot中MongoDB注解概念及使用1.@Id主键,不可重复,自带索引,可以在定义的列名...

2019-07-02 13:02:00 129

原创 netty的异常分析 IllegalReferenceCountException refCnt: 0

在下面代码中public class EchoServerHandler extends SimpleChannelInboundHandler { @Override public void channelRead0(ChannelHandlerContext ctx, Object msg) throws Exception { ...

2019-06-28 14:51:00 2556

空空如也

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

TA关注的人

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