自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 资源 (2)
  • 收藏
  • 关注

原创 【码农圈子】想加免费的程序员微信群的看过来

1、此群为IT技术讨论和分享群哈,你可以在群里提问有关于计算机软件编程,不限于哪种程序开发语言;同时更加欢迎分享自己的项目和优秀的博客出来,大家一起学习进步。2、但是,禁止发布一些和计算机无关的广告和链接,禁止在群里直接发个人相关的二维码和公众号名片,违者立踢,希望大家遵守和配合。添加博主微信(也可以扫下方二维码): LYH20210104NHF, 备注: 加群, 然后我手动拉你进群。3、打广告先发红包(最低2元起,不封顶),给大家来些红包福利,不发红包只打广告的踢出去。

2024-04-22 17:26:28 531

原创 Java实现PDF水印添加教程,让你的文档更保密!

如果您觉得这些文章对您有所启发和帮助,何不将它们与您的好友分享呢?这样,他们也能够享受其中的精彩内容,并从中获得启发。同时也希望您用发财的手帮忙点个关注,可以通过下方菜单点击福利领取上千套简历模板、几千道的面试题pdf以及几百G涵盖了Java开发,前端开发,小程序开发,数据库,测试等等的相关学习书籍与资料。添加图片注释,不超过 140 字(可选)另外也可以通过点击交流群按钮添加我好友,然后拉您到自己的创建的Java知识分享群。

2023-11-30 09:23:46 2407 1

原创 都啥时候了 , 不会有人还搞不懂new String(“abc“)创建了几个对象吧?快看看吧!

创建了几个对象?等这一类问题是我们经常讨论的问题, 同时也是面试常问到的问题, 我们都知道在Java中从”.java"文件编译成".class"文件的过程,会有一个优化器去优化我们的代码, 为了彻底搞清楚这一类问题, 我们还得从底层原理开始分析.JVM,全称Java Virtual Machine(Java虚拟机),是一个规范,用于在实际的计算机上仿真模拟各种计算机功能。它是一个虚构出来的计算机。JVM是执行代码并为该代码提供运行时环境的软件程序的规范。

2023-11-17 10:52:41 222

原创 代码都成屎山了,还在用if-else?不如试试我的这套工厂模式+Map+自定义注解+枚举

看到同事的代码,想到多年以前自己刚开始工作的时候写的代码,即使有再多的需求,再多的业务逻辑,都是满屏的if-else解决的,全然忘记什么叫做“面向对象编程”,但是写的多了都忘记了哪里是头,哪里是尾,但是当时并没有感觉到有多别扭,等慢慢的工作之后,回头再去看之前的代码,我艹,这是哪个**写的代码。可能刚入门的同行可能会忽略一点,if-else可能是面向过程的实现。那么如何解决掉满屏的if-else呢?让代码看起来变的更加的优雅、简洁呢?我一般都是使用工厂模式 + 自定义注解 + 反射 + 枚举 +

2023-11-08 15:16:33 231

原创 1024程序员节:理解编码背后的艺术

"1024"在中国互联网文化中有两个主要的含义:1024是2的10次方,这在计算机科学中是一个重要的数字,因为计算机的基础是二进制。因此,程序员们常常把1024作为一个特殊的日子来庆祝,也就是10月24日,被称为程序员节。1024也是中国的国家公祭日,即"中国人民抗日战争胜利纪念日"。这个日子是为了纪念中国人民在第二次世界大战中的伟大胜利以及为了世界和平付出的巨大牺牲。在这里,我猜你可能是在提到第一个含义,也就是程序员节。如果你是一名程序员,祝你节日快乐!

2023-10-24 15:00:46 198

原创 SpringSecurity + jwt + vue2 实现权限管理 , 前端Cookie.set() 设置jwt token无效问题(已解决)

今天也是日常写程序的一天 , 还是那个熟悉的IDEA , 还是那个熟悉的Chrome浏览器 , 还是那个熟悉的网站 , 当我准备登录系统进行登录的时候 , 发现会直接重定向到登录页 , 后端也没有报错 , 前端也没有报错 , 于是我得脸上又多了一张痛苦面具 , 紧接着在前端疯狂debug…寻找问题 , 我前端登录的部分逻辑是这样的 :1.登录成功之后 , 后端会响应一个jwt token , 这个jwt token的载荷有角色、权限、用户等信息。

2023-10-12 14:12:44 1256 1

原创 Linux基本操作命令

1、Linux内核最初只是由芬兰人林纳斯•托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。(Unix)2、Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。3、Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

2023-10-07 16:54:27 249 11

原创 java进阶-第10章-多线程

多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同。为什么要处理线程间通信多个线程并发执行时, 在默认情况下CPU是随机切换线程的,当我们需要多个线程来共同完成一件任务,并且我们希望他们有规律的执行, 那么多线程之间需要一些协调通信,以此来帮我们达到多线程共同操作一份数据。如何保证线程间通信有效利用资源多个线程在处理同一个资源,并且任务不同时,需要线程通信来帮助解决线程之间对同一个变量的使用或操作。就是多个线程在操作同一份数据时, 避免对同一共享变量的争夺。

2023-10-07 16:53:24 123 1

原创 java进阶-第9章-JDBC

JDBC(Java Database Connectivity) Java 连接数据库的规范(标准),可以使用 Java 语言连接数据库完成 CRUD (CREATE READ UPDATE DELETE)操作。用户输入的数据中有 SQL 关键字或语法并且参与了 SQL 语句的编译,导致 SQL 语句编译后的条件含义为 true,一直得到正确的结果。这种现象称为 SQL 注入。需求:实现登录功能,需要通过传入的登录名和密码查询数据库表中的用户是否存在。

2023-10-07 16:52:08 97

原创 java进阶-第8章-IO流

生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s ,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入input 和输出output ,即流向内存是输入流,流出内存的输出流。Java中I/O操作主要是指使用java.io包下的内容,进行输入、输出操作。输入也叫做读取数据,输出也叫做作写出数据。

2023-10-07 16:51:31 63

原创 java基础-第7章-常用类

Java提供了两个类型系统,基本类型与引用类型,使用基本类型在于效率,然而很多情况,会创建对象使用,因为对象可以做更多的功能,如果想要我们的基本类型像对象一样操作,就可以使用基本类型对应的包装类,如下:byte—>Byteint—>long–>Longchar–>

2023-10-07 16:50:34 68

原创 java基础-第6章-java数组与异常

需继承Exception或Exception的子类,代表特定问题。异常类型名称望文生义,可在发生特定问题时抛出对应的异常。常用构造方法:无参数构造方法。String message参数的构造方法。super();

2023-10-07 16:49:36 57

原创 java基础-第5章-面向对象(三)

所有的类,都是以继承结构存在的。如果没有显示的父类,默认继承Object类。相当于class Student extends Person{}//学生类继承Person类,相当于超类、基类,所有类的直接或间接父类,位于继承树的最顶层。任何类,如没有书写extends显示继承某个类,都默认直接继承Object类,否则为间接继承。Object类中所定义的方法,是所有对象都具备的方法。Object类型可以存储任何对象。作为参数,可接受任何对象。作为返回值,可返回任何对象。

2023-10-07 16:47:29 77

原创 java基础-第4章-面向对象(二)

静态(static)可以修饰属性和方法。称为静态属性(类属性)、静态方法(类方法)。在全类中只有一份,不因创建多个对象而产生多份。不必创建对象,可直接通过类名访问。

2023-10-07 16:46:36 80

原创 java基础-第3章-面向对象(一)

用法:step1:方法的定义(声明)[修饰符1,修饰符2...] 返回值/void 方法名(参数列表){.....return//求1-10的和//方法体int sum =0;i

2023-10-07 16:43:07 62

原创 java基础-第2章-java基础语法

变量:常量是固定不变的数据,那么在程序中可以变化的量称为变量。Java中要求一个变量每次只能保存一个数据,必须要明确保存的数据类型。整个内存就好像是酒店,当中包含了多个房间。房间的容量(大小)不同(单人间、两人间…)每个房间都有一个唯一的门牌号。每个房间的住客(类型)也不同。酒店的房间 — 变量房间的类型 — 数据类型房间门牌号 — 变量名房间的住客 — 值Java语言中数据类型:2大类基本数据类型引用数据类型。

2023-10-07 16:42:28 85

原创 java基础-第1章-走进java世界

语言:是人与人之间用于沟通的一种方式。例如:中国人与中国人用普通话沟通。而中国人要和英国人交流,就要学习英语。计算机语言:人与计算机交流的方式。如果人要与计算机交流,那么就要学习计算机语言。计算机语言有 很多种。如:C ,C++ ,Java ,PHP , Kotlin ,Python ,Scala等 等Sun Microsystems于1995年推出的面向对象的程序设计语言,共同创始人的詹姆斯·高斯林 (James Gosling)被誉为“Java之父”。是一种面向Internet的编程语言。

2023-10-07 16:41:14 70

原创 intellij debug模式提示 : Method breakpoints may dramatically slow down debugging

最近在搞一个搭建一个项目 , 项目搭建完之后发现启动不了 , 一直都是正在加载中 并且提示Method breakpoints may dramatically slow down debugging,百度之后才知道是打了方法断点的原因 , 之前不小心打了一个断点。

2023-09-09 16:08:30 351

原创 Linux centos7.x系统将/home磁盘分配给/

然后再执行umount /home就可以成功了 , 同时执行以下命令把逻辑卷删除了。可以使用以下命令查看哪些进程在占用。

2023-07-26 17:47:31 1631 1

原创 Linux centos7.x系统 下没有ens33 网卡的解决方案

进入/lib/modules/3.10.0-1160.36.2.el7.x86_64/updates/drivers/net/ethernet/intel/e1000e目录下,把e1000e.ko文件拷贝到目录/lib/modules/3.10.0-1160.36.2.el7.x86_64/updates/drivers/net下。将刚刚下载的安装包放到此目录下 , 我这里是可视化界面 , 可以直接操作 , 如果没有可视化界面可以使用cp命令复制。到此为止 , 一个新的网卡就算安装配置好了。

2023-07-26 16:30:55 5106 1

原创 Mysql(一) 数据库实现-DDL-DML-DQL及各种函数用法

CREATE DATABASE [IF NOT EXISTS] 数据库名;

2023-07-11 14:00:29 381

原创 Mysql(一) 数据库的设计与规范

通过把班级与班主任的映射关系另外做成一张映射表,我们就成功地消除了表中的传递依赖了。不知道读者们有没有发现,以上所介绍的范式的最终目的都是为了减少我们的工作量呢?所以说,尽管范式是一种很好的指导规范,但在实际应用中,我们也不需要太局限在范式中,更多的是应该从项目中出发,设计出合理的表结构。第一范式(1 NF):字段不可再拆分。第二范式(2 NF):表中任意一个主键或任意一组联合主键,可以确定除该主键外的所有的非主键值。

2023-07-11 13:51:02 713

原创 Jenkins部署报错问题:已解决

检查配置文件中的JAVA环境变量是否都配置正确, 如果有问题就更改为正确的 , 然后执行如下命令使配置重新生效。如果配置正确 , 也可以执行上面的命令 , 然后重启 , 如果还是启动失败 , 并且通过。还是刚刚更换站点的那个页面,把刚刚下载下来的文件上传然后点击deploy即可。那么可以使用ln -s的方式建立软连接。首先要确保java环境变量可以用。

2023-06-12 15:37:48 1616

原创 Gson转换json数据为HashMap时long类型变为double问题解决

};//判断字符串的实际类型 switch(token) {return map;return;break;} }

2023-04-19 00:06:24 1028 1

原创 服务搭建篇(十二) Kubernetes集群的安装及部署

K8S官网文档:https://kubernetes.io/zh/docs/home/K8S 是Kubernetes的全称,源于希腊语,意为“舵手”或“飞行员”,官方称其是:用于自动部署、扩展和管理“容器化(containerized)应用程序”的开源系统。翻译成大白话就是:“K8S 是负责自动化运维管理多个Docker 程序的集群”。

2023-04-04 14:54:35 2106

原创 k8s集群状态全部为NotReady , 已解决

等待一会 , 执行命令kubectl get nodes 状态就好了。原因是没有安装 cni 插件。我们可以看到有如下错误。然后执行如下命令安装。

2023-04-04 14:17:59 2118

原创 error: no configuration has been provided, try setting KUBERNETES_MASTER environment variable

最近在搭建完k8s集群之后 , 在master节点执行。在/etc/profile末尾增加。

2023-04-04 11:42:24 1857

原创 容器引擎Docker的常用命令

可使用 docker search命令搜索存放在 Docker Hub中的镜像。执行该命令后, Docker就会在Docker Hub中搜索含有 java这个关键词的镜像仓库。

2023-03-31 15:38:22 2150

原创 服务搭建篇(十一) 容器引擎Docker的部署及介绍

Docker是一个开源的容器引擎,它有助于更快地交付应用。Docker可将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理。使用。

2023-03-30 18:38:28 2301

原创 服务搭建篇(十) 使用GitLab+Jenkins搭建CI\CD执行环境 (下) 配置整合

上一篇文章搭建了GitLab+Jenkins的基础环境 , 现在基于搭建好的环境快速的实现CI/CD , 接下来需要在Jenkins中配置一个构建任务。

2023-03-23 11:12:27 3937 1

原创 服务搭建篇(九) 使用GitLab+Jenkins搭建CI\CD执行环境 (上) 基础环境搭建

每当我们程序员开发在本地完成开发之后 , 都要部署到正式环境去使用 , 在一些传统的运维体系中 , 开发与运维都是割裂的 , 开发人员不允许操作正式服务器 , 服务器只能通过运维团队来操作 , 这样可以极大的提高服务器的安全性 , 不经过安全保护的开放服务器 , 对于黑客来说无疑就是打靶的靶场。

2023-03-10 15:07:50 3829

原创 服务搭建篇(八) 使用GitLab部署一个属于自己的代码托管平台

熟练使用git应该是每个程序员必备的技能 , git可以更好的管理和维护我们自己的代码 , 使团队之间的协作的效率也大大的增加 , 但是有些时候我们总是因为无法访问外网的内网环境 , 或者是不希望将自己的代码去放到第三方服务器 , 比如githup , 搭建自己的私有代码管理平台也成为了一部分程序员的选择 , 针对这种需求有有不少的解决方案 , 比如gitWeb、gerrit、gitlab , 今天我们就来说一下gitlab。

2023-03-08 14:56:48 5775

原创 服务搭建篇(七) Elasticsearch单节点部署以及多节点集群部署

Elasticsearch(简称ES) 是一个分布式 , RESTful风格的搜索和数据分析引擎 , 使用java开发并且是当前最流行的开源的企业级搜索引擎,能够达到近实时搜索,稳定,可靠,快速,安装使用方便。客户端支持Java、.NET(C#)、PHP、Python、Ruby等多种语言。官方网站: https://www.elastic.co/下载地址:https://www.elastic.co/cn/downloads/past-releases#elasticsearch。

2023-03-07 15:20:46 9712

原创 服务搭建篇(六) 搭建基于Kafka + Zookeeper的集群

kafka是一个分布式的,分区的消息(官方称之为commit log)服务。它提供一个消息系统应该具备的功能,但是确有着独特的设计。可以这样来说,Kafka借鉴了JMS规范的思想,但是确并没有完全遵循JMS规范。名称解释Broker消息中间件处理节点,一个Kafka节点就是一个broker,一个或者多个Broker可以组成一个Kafka集群TopicKafka根据topic对消息进行归类,发布到Kafka集群的每条消息都需要指定一个topicProducer。

2023-02-25 14:57:53 5769

原创 一台tomcat如何部署多个端口不同的服务?

Linux和windows一台tomcat如何部署多个端口不同服务的方式大同小异复制tomcat下webapps文件夹为webapps1 , webapps2 (文件名称无要求 , 需要部署N个项目就复制N-1个文件夹 , 比如部署三个项目 , 再复制两个webapps就行 , 以此类推)修改如下配置需要注意的是Host标签的appBase必须和第一步复制出来的文件名一样 , 如果有多个项目 , 那就参考这个配置增加/修改配置就行修改配置之后可以直接启动测试 , 通过不同的端口访问不同的项目 , 在

2023-01-04 09:59:45 6835

原创 服务搭建篇(五) Redis单机/redis-cluster集群搭建

redis集群是一个由多个主从节点群组成的分布式服务器群,它具有复制、高可用和分片特性。Redis集群不需要sentinel哨兵·也能完成节点移除和故障转移的功能。需要将每个节点设置成集群模式,这种集群模式没有中心节点,可水平扩展,据官方文档称可以线性扩展到上万个节点(官方推荐不超过1000个节点)。redis集群的性能和高可用性均优于之前版本的哨兵模式,且集群配置非常简单Redis Cluster 将所有数据划分为 16384 个 slots(槽位),每个节点负责其中一部分槽位。

2023-01-04 09:39:14 5921

原创 redis_cluster集群启动失败问题解决方案

删除每个节点的.aof |.rdb | nodes-*.conf

2022-12-19 18:29:03 5726

原创 Spring Cloud OpenFeign 远程调用传递请求头信息

通过简单的RequestInterceptor接口, 就可以实现对所有的Feign请求,传递请求头和请求参数

2022-12-16 19:33:09 6046

原创 Mysql主从同步时Slave_SQL_Running状态为Yes , 但是Slave_IO_Running状态为Connecting以及NO的情况故障排除

Slave_IO_Running状态为Connecting或者Slave_IO_Running状态为No的问题一步一步的排查过程 , 直到问题解决

2022-12-16 17:44:13 4209

原创 服务搭建篇(四) 搭建基于Nginx + keepalived的高可用服务

比如我这里虚拟IP+nginx端口是 : 192.168.154.10:80 , 我直接访问 , 出来的是192.168.154.134服务器上的nginx , 因为我刚刚做了区分 , 所以这个时候就可以知道访问的是哪个机器的Nginx , 然后我们把134的Nginx停掉 , 然后再次访问 , 仍然可以使用 , 此时 ,出现的135的页面 , 也就是访问的是192.168.154.135的Nginx。启动 : systemctl start nginx。出来如下配置表示配置文件没有问题。

2022-12-15 09:53:58 5312

空空如也

空空如也

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

TA关注的人

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