自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

keller的博客

No.weak,no giving up.Let's do it togeter.Only to be the best of myself. The world is what you want.

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

原创 【RocketMq】window安装

要求:jdk 1.8 64位操作系统:window 64位1、官网下载 rocketmq 的zip 包,控制台源码2、启动nameServer3、启动broker4、安装控制台可以将控制台的源码打成jar包,然后通过java -jar 命令启动。

2024-04-10 17:48:56 1324

原创 k8s本地开发环境Telepresence的安装和使用

Telepresence是用来解决什么的呢?比如这么一个场景,一个服务A上线后,部署到线上k8s,但是另一服务B出现bug了,修改服务B的bug,需要保持服务A启动,为了不启动本地的服务A,此时我们想直接连接服务A来进行调试,此时Telepresence就发挥作用了。

2024-04-02 17:22:42 1085

原创 Nacos启动的第一个坑 Request nacos server failed:

今天,小编启动nacos写微服务的demo,电脑上安装了nacos服务器,管理后台也能正常登录。然后搭建了一个基于springboot的微服务项目,加了依赖、启动类加了注解、配置文件也进行了配置,然后启动项目,启动失败了。

2024-03-13 10:49:20 1332

原创 python的列表

列表 是python中的一种数据类型,可以存放多个数据,列表中的数据可以是任意类型的。

2023-11-08 18:08:46 345

原创 python的字符串

my_str.replace(old_str, new_str, count) 将my_str中的old_str替换成new_str。返回值:如果找到了str,返回str在my_str中的位置正数下标,如果没有找到,返回-1。使用方式和find一样,只是index()方法,在找不到子串的时候,会报错。检测str是否包含在my_str中,如果是返回开始的索引值,否则返回-1。step 步长,下标之前的间隔,默认是1,当是1的时候,可以不写。下标其实就是索引,是一个整型数字,可以是正数,也可以是负数。

2023-11-08 16:12:03 417

原创 Java判断字符串是否包含汉字

在Java语言中,判断一个字符串是否包含汉字是一个常见的问题。由于Java是以Unicode编码来表示字符的,所以可以通过判断字符的Unicode编码范围来确定是否为汉字。

2023-11-03 15:15:48 1187

原创 线程创建的三种方式

说起线程,就会联想到进程,那么先来说说,什么是进程。进程就是运行的程序。就比如说,像qq、微信我们将其打开,操作系统会给这个程序分配一定的资源(主要是内存资源),这样就是有一个qq的进程在运行。那么,什么是线程呢。线程是CPU调度的基本单位,每个线程执行的都是某一个进程的代码的某个片段。进程和线程有啥关系吗?一个进程里有多个线程,一个进程至少的有一个线程。

2023-09-28 14:46:58 138

原创 JDK8的新日期API

在jdk8中新增的一个时间戳/时间线,内部保存了从1970年1月1日 00:00:00以来的秒和纳秒// 获取从1970年一月一日 00:00:00 到现在的纳秒// 5毫秒//39000000也可以获取到当前的日期时间,但是它没有获取年、月、日、时分秒的方法。只能获取到纳秒或秒。

2023-09-20 15:53:49 132

原创 微服务到底是采用多仓库还是单体仓库更好呢?

单块仓库(mono-lith)单体应用,所有代码在一个项目当中。单体仓库(mono-repo)所有的服务分模块都放在一个仓库当中。优点:1、易于规范代码。所有代码在一个仓库中,可以标准化依赖管理,集中开展code review,规范代码风格2、易于集成和部署,所有的代码在一个仓库中,配合自动化构建工具,可以做到一键构建和一键部署,一般不需要特别的集中管理和协调3、易于理解项目整体,开发人员可以把整个项目加载到本地的ide里进行code review,可以本地部署调试,方便开发人员把握整体的技术

2023-07-18 14:22:43 567

原创 UriComponentsBuilder使用发现参数被编码了

开发中,小编在项目中,使用RestTemplate做GET请求,为了优雅的封装参数,使用了UriComponentsBuilder来进行参数封装。直接123将代码写完,远程调用有数据,远程底层solr库,所以拿到数据了,没有过多的验证,在测试时,发现接口是返回了数据,但是,数据不正确。最后,两边联调查找原因,发现是传递到远程的参数,被编码了,从而导致的数据结果不正确。

2023-07-14 15:34:02 870

原创 MYSQL设置字段自动获取当前时间

最近,整理数据库数据,看到好多表都有加create_time和 update_time字段,来记录数据插入的时间和更新时间,但是时间插入是通过代码来维护的。代码维护,也未尝不可,只是在编写代码的时候,需要手动new Date()为两个字段赋值,比较麻烦点,重复的来操作这个工作。所以,小编想着整理一下mysql时间字段自动填充,与大家分享。

2023-07-11 11:23:29 1101

原创 使用git前做的最小配置

进入公司开发,开发人员是离不开git的,几乎每天都在使用git进行代码的提交和推送。所以当新安装git后,我们需要对git进行配置。那么需要配置什么呢?我们需要配置user.name 和 user.email 这两个信息,以便在我们commit和push的时候,能显示代码的提交者和提交着的邮箱信息,以便于有事情的找到对应的人员。我们也看到,—global参数表示对当前用户所有仓库有效,所有我们直接使用–global参数设置就可以了,配置一次,所有的项目都生效了,很方便。

2023-05-25 18:38:57 228

原创 mysql的数据备份与还原

1、登录mysql命令管理界面。4、执行source命令。

2022-11-22 08:50:53 441

原创 idea报错Since Maven 3.8.1 http repositories are blocked

IDEA官网更新的也很快,截止到小编,写这边博客的时候已经是Version: 2022.2.2,但是今天我们不过多的讨论IDEA版本的问题,而是讨论下,新下载的IDEA在构建项目时,在下载引用的包时出现“Since Maven 3.8.1 http repositories are blocked”的问题。总之,报错是由于高版本的maven不支持http的存储库导致的,最简单的方法是降低maven版本,现在好多项目,还是存在一些老版本的依赖在使用,比较麻烦。甚至有的依赖包升级了也不是https。

2022-09-23 15:11:28 43110 2

原创 为什么maven没有3.7的版本

之所以,直接到了3.8.1版本,主要原因还是新增了三个导致默认行为更改的功能,比如说存储库必须使用https。针对解决办法,如果将依赖升级可以搞定,那直接升级最好了;如果需要保留版本,配置镜像,那还不如退回到3.6.3来的实在。

2022-09-23 14:50:08 2027

原创 MYSQL排序加分页报错Out of sort memory, consider increasing server sort buffer size

出现该问题的是在做分页查询时出现的,确切的说是order by 和 limit一起用的时候出现的。而起是由于limit m,n 中m过大时会出现Out of sort memory, consider increasing server sort buffer size一定记得,通过命令设置了全局变量后,要在配置文件中做修改,否则重启服务后,设置的全局变量就失效了。

2022-08-24 17:30:00 9609 2

原创 (看这篇就够了)idea操作git commit后,撤销commit,恢复到提交前的状态

为什么会有提交(commit)代码到git本地仓库后,想要撤销的操作呢?一般来讲,是我们需要commit后,发现,有一些文件不应该提交到仓库。或者该次提交中,还不想包含,某些修改了的文件。亦或者说在做本地调试的时候,修改了某些文件,但是这些文件,在测试环境或者生成环境是不能被修改的。针对这些情况,在没有注意到的情况下,都commit到了本地,此时为时还不晚。git命令,就不说了,直接用idea操作吧,简单实用。通过上边的解释,大家可以根据自己的需求,选择自己合适的选项。...

2022-08-18 15:17:35 16995 2

原创 前后端分离开发,前端打包后放springboot的static文件夹部署

今天,小编在公司部署项目,要求前后端部署在一起,前端开发完后将前端代码打包后放到springboot的static目录下;然后打成镜像,k8s部署;前端项目执行npm run build命令,文件会打包到dist文件夹下;后端项目在项目的resource目录下,创建static文件夹,如下所示:将前端打包后的dist下的所有文件,全部拷贝到static文件夹下;通过这样部署后,相当于前后端作为一个整体部署到了tomcat当中,所以前后端使用同一个端口;启动springboot工程,然后访问localh

2022-06-29 19:13:10 6746

原创 使用JDK安装和运行keycloak

keycloak开源授权服务器本地安装

2022-06-18 11:15:03 1570

原创 ZooKeeper安装

前置环境zookeeper的安装需要依赖java的JDK。所以需要先安装JDK8,并且配置好环境变量。linux下的jdk安装,请参考小编博客《Linux下JDK的安装》ZooKeeper安装小编在虚拟机创建了三台机器,并且分别设置hostname为node01,node02,node03。再node01上安装完成后,然后分发到node02,node03。采用的zookeeper版本为3.7.0。下载安装包在用户主目录下,通过wget下载zookeeper安装包,或者在官网下载好传到服务器上也

2022-03-31 17:35:03 1997

原创 JDK安装

安装wget yum -y install wget安装JDK安装lsb用于查询linux版本 yum install -y redhat-lsb查询linux版本 cat /proc/version lsb_release -a cat /etc/issue uname -a下载jdk根据linux版本信息确定需要下载32位还是64位的包。下载地址:https://www.oracle.com/java/technologies/javase/javase8u211-l

2022-03-17 16:52:00 1142

原创 null, message from server: “Host ‘xx.xx.xx.xx‘ is not allowed to connect to this MySQL server“

前言最近,小编在阿里云的ECS上部署了一个MYSQL服务,然后用DBeaver测试连接时,报如下允许连接信息:null, message from server: "Host 'xx.xx.xx.xx' is not allowed to connect to this MySQL server"解决出现这个提示,是由于我们使用root用户登录时,没有给root用户设置能访问的机器,所以我们设置一下,就可以了。第一步:登录mysql:输入 mysql -u root -p 命令,键入密码,连

2022-01-14 11:28:37 4764 3

原创 宿主机和docker容器之间的文件拷贝

1、从容器里面拷文件到宿主机在宿主机里面执行以下命令:docker cp 容器名:要拷贝的文件在容器里面的路径 要拷贝到宿主机的相应路径示例: 假设容器名为nginx,要从容器里面拷贝的文件路为:/usr/share/html/index.html, 现在要将index.html从容器里面拷到宿主机的/usr/local路径下面在宿主机上面执行命令:docker cp nginx:/usr/share/html/index.html /usr/local2、从宿主机拷文件到

2021-12-31 09:22:36 1423

原创 nginx的几个默认路径

1.配置所在目录/etc/nginx/2.执行目录/usr/sbin/nginx3.模块所在目录/usr/lib64/nginx/modules4.默认站点目录/usr/share/nginx/html

2021-12-31 08:42:06 13132

原创 windows系统下Python的安装和环境变量配置

安装包下载打开 WEB 浏览器访问https://www.python.org/downloads/windows/选择2.7版本下载选择适合自己电脑的msi包。下载完安装包,直接双击打开。为所有用户安装,直接点击next下一步。选择好自己合适的安装路径位置这里建议选择安装add python.exe to path 将python添加到环境变量中。选择安装成功后添加到环境变量中。等待安装完成,点击finish安装完成。打开cmd窗口,输入python后显示版本号,表示pyt

2021-12-17 12:40:15 546

原创 java解压rar报错badRarArchive

引入依赖: <dependency> <groupId>com.github.junrar</groupId> <artifactId>junrar</artifactId> <version>7.4.0</version> </dependency>使用 public static void mai

2021-12-08 10:26:48 1823

原创 spring cloud gateway入门到进阶

前言最近,了解了一下,目前的一些api网关的常用技术,配置了一下spring cloud gateway。做一下记录吧,毕竟时间长了,容易忘。zuul1.xzuul2.xspirng cloud gatewaynginx + lua(openresty ,kong)envoy上边这几种都是可以作为网关使用的,其他的几种,后边有时间,再做详细的介绍,今天我们一起来看下spring cloud gateway的使用吧。前置版本JDK版本:1.8springboot版本:2.3.10.R

2021-08-31 17:11:26 165

原创 maven的java项目打包成jar运行

前言今天同事问我,maven项目怎么打包成jar后,里边没有第三方依赖,我当时第一反应不可能啊,直接mvn package之后不就可以啦。后来,一看原来不是springboot项目,一个非web的java的maven项目,顿时,小编也一脸茫然,好久没整过这样的项目了,仔细回忆了一下,maven打成jar包项目还是需要引入两个插件的。特此记录一下吧,以便后续在用时,方便使用。 <plugin> <groupId>org.apache.maven.plugin

2021-08-31 16:09:19 568

原创 grpc的使用

协议缓存区(Protocol Buffers)直观的一个表现形式就是.proto扩展名的普通文本文件,在这个文件中可以定义消息、gRPC服务。一般来讲,服务和消息搭配使用。消息相当于 我们的类,可以做为方法的参数和返回值。协议缓存区数据被构造为消息// 消息message Person { string name = 1; int32 id = 2; bool has_ponycopter = 3;}如下,.proto文件。定义了一个服务和两个消息// The greeter .

2021-07-29 12:35:40 696

原创 《设计模式之单例模式》8中单例模式你都懂吗?

前言设计模式中的单例模式,大家基本也都会,也都基本上都知道两种实现形式,无外乎饿汉式和饱汉式两种。其实在这两种方式中可以衍生出8中方式。方式一: 饿汉式public class Student { private static final Student INSTANCE = new Student(); private Student () { } public void method(){ System.out.println("method

2021-07-09 16:19:23 88

原创 springboot项目dynamic-datasource-spring-boot-starter动态切换数据源

前言动态切换数据源,看到的常用方法,都是采用AOP思想来进行动态切换;最近做的新项目,有操作两个不同库的需求,于是乎就想,既然采用springboot开发,那么会不会有官方的starter或者第三方的starter呢?小编经过一轮spring官网的查看,然而并没有。但是,最后欣然的发现,还是有starter的,只不过是第三方的。来至于com.baomidou,使用过mybatis框架的,对这个域名应该并不陌生,不多说,这就开始。使用1、pom.xml引依赖天才第一步,导入依赖库,在我们的pom.xm

2021-07-02 15:46:21 1907

原创 Lucene、Solr和 Elasticsearch的技术选型

LuceneLucene使用上更加灵活,但是需要自己处理搜索引擎系统架构,以及其他附加功能的实现。Solr和Elasticserachsolr对lucene做了很多封装,是一个处于高层的框架,Lucene很多新特性不能及时向上透传,所以有时候可能发现需要一个功能,Lucene是至此的,但是Solr上看不到相关的接口的情况。solr利用zookeeper进行分布式管理,而elasticsearch自身带有分布式协调管理功能。solr比elasticserach实现更加全面,solr官方提供的功能更多

2021-06-23 14:39:09 347 2

原创 如何用notepad++替换txt文本中的换行符\r\n

前言我们在处理txt文本时,发现其中的换行符没有生效,这就很烦人了,看起来极其不爽。我们可以用notepad++对文本进行处理。处理示例:我是\r\n中国人结果:我是中国人用notepad++打开文档,按ctrl+ h,显示如上界面,点击替换,查找目标中输入\\r\\n,替换为输入\r\n,查找模式一定要勾选扩展(X)(\n,\r,\t,\0,\x...),然后点击全部替换,即可。如上图,所示。注意:如果选择扩展不生效,可以尝试选择正则表达式,再次尝试。...

2021-06-23 14:13:09 9682

原创 Solr入门简介

1. Solr简介前言学习Solr需要一些和java相关的储备知识,在此之前,假设您已经:拥有Java开发环境以及相应的IDE熟悉Spring Boot熟悉Maven熟悉Lucene如果大家是一名java开发工程师,我想大家有需求要学习Solr,应该上边的前3条要求都不是问题,至于为什么要学习Lucene呢? 因为Solr是基于Lucene开发的全文检索服务。也可以简单理解为,solr依赖于Lucene,是Lucene的一种封装。这个在后边也会详细介绍。1.1 Solr 是什么Sol

2021-06-22 16:57:04 7225

原创 rclone的安装和使用

前言由于公司用了minio做文档存储,所以最新学习了下rclone的使用,用来同步云存储的数据。minio是基于s3协议的实现,在安装完rclone后,会看到我们用rclone配置连接minio时会选择s3协议。安装环境是centos7安装rclone执行 curl https://rclone.org/install.sh | sudo bash可能会报错None of the supported tools for extracting zip archives (unzip 7z b

2021-06-09 17:23:27 7732

原创 springboot2.x使用企业邮箱发送邮件

这里写自定义目录标题前言配置文件application.yml前言之前发邮件,一直是使用公司封装好的工具类,还没体验过Springboot的自动配置的便捷性。最近,刚好搭建新项目,有发邮件功能,体验了一把。发邮件,大家最好,了解一下smtp、pop3协议。简单理解,一个是发送协议,一个是接受协议。springboot发邮件比较简单,直接上配置文件,和测试类了。配置文件application.yml...

2021-05-07 09:30:22 2602

原创 java中加载properties配置文件的三种方式

前言最近一直在整理基础知识,顺便整理一下项目中加载properties配置文件的方式。项目的路径我们所想要读取的是在src下的bean.properties文件,确切的说是加载类路径下的bean.properties.为了方便对比,我们在项目的更路径下创建了bean1.properties文件,用来加以对比类路径和项目根路径。第一种方式(不推荐)采用InputStream直接加载,用IO流直接加载,写相对路径的话,是基于项目名开始的,所以bean.properties的路径需要从src写起。如

2021-04-11 14:11:55 4179

原创 File类

前言File 类用来表示文件路径或者文件夹路径。构造方法public File(String pathname);传入一个字符串的文件路径或者是文件夹路径,来创建一个File对象(该路径可以是绝对路径,也可以是相对路径)public Flie(String parent, String child);传入一个父路径,和一个子路径来创建File对象。(父路径可以是完整绝对路径的一部分,然后另一部分由子路径来传入)public File(File parent,String child

2021-04-07 16:49:40 278 2

原创 RabbitMQ的web管理界面打不开解决方案

前言安装完erlang和rabbitmq之后,是不是满心欢喜的想要打开后台,一顿操作呢,然后却发现地址栏输入localhost:15672后界面没出来,顿时会想到erlang和rabbitmq安装是不是有问题了,心生疑惑,愉悦的心情也淡了不少,莫慌,这就解决它;1、确认是否执行命令开启了后台管理若忘记开启,cmd进入rabbitmq的安装目录的sbin目录下执行如下命令rabbitmq-plugins.bat enable rabbitmq_management看到如下提示,操作成功2、检查r

2021-03-09 18:04:56 3254

原创 为什么springboot项目的pom.xml引入依赖不需要加版本号

前言之所以springboot项目pom.xml中添加依赖不需要添加版本号,是springboot开发团队,为了用户开发中发生依赖冲突而考虑的,项目中会自动配置当前springboot的版本和其他依赖的兼容版本号。具体我们看下pom.xml中的代码每一个springboot项目都会一个父工程spring-boot-starter-parent,该工程中,通过描述信息,可以看到是为应用提供依赖和插件管理的,浏览一遍后,可以发现,这个pom.xml中定义了一些插件管理,项目的编码,jdk版本,编译的jd

2021-01-21 18:19:47 4329 2

空空如也

空空如也

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

TA关注的人

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