自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 前端怎么使用svg格式的图片

以阿里巴巴矢量图标库为例,随便找一个图标,如下图。直接在代码中使用img标签用就行(推荐)点击复制svg代码,扔到代码中,它很长。svg下载后,就长下面这样。

2024-05-27 14:28:05 290

原创 工作中常用的RabbitMQ实践

Topic类型:(当生产者往该交换机发送消息时,他并不像direct指定固定的routingkey,可以进行模糊匹配,当该routingkey为空时,他会匹配routingkey为空的队列)direct类型:(当生产者往该交换机发送消息时,他必须指定固定的routingkey,当routingkey值为空,他也会匹配routingkey为空的队列)fanout类型:(当生产者往该交换机发送消息时,他所绑定的队列都会收到消息,routingkey即使写了也会忽略,一般为空字符串)因此会打印出下面这条记录。

2023-12-07 18:08:25 993

原创 使用Java给钉钉群发消息

我设置了关键字,消息里面有这个hello关键字才能成功发送消息。记录自己的Webhook,是进行发消息的途径。首先在钉钉新建一个群,并且添加机器人。

2023-11-28 18:42:48 1303

原创 策略模式实践

接口、实现类、自定义注解、上下文、策略工厂。

2023-11-21 17:49:10 553

原创 从申请服务器到Docker部署Java项目至最后运行完结

通过FinalShell进行文件上传,我在云服务器上新建了名为dockerfile的文件夹,将这两个内容放进了这里。进入该文件夹,执行构建指令 docker build -t java-docker:v1.0 .新建一个文件夹,内容为DockerFile和target,target里面只放打包后的jar包。docker build 指令是前置 -t 指定构建的名字。java-docker:v1.0:在构建时命名的名字。构建完,docker images,查看是否成功。说白了:让你的端口让服务器通过。

2023-11-14 16:42:36 387

原创 把自己本地项目发布到Gitee

git config --global user.email "自己的邮箱"$ git config --global user.name "自己的名字"$ git commit -m '第一次上传本地学习的代码到远程仓库中'$ git remote add origin 自己的仓库地址。// 自己的仓库地址 将本地的仓库和远程的仓库进行关联。新建一个测试文件夹(也可以直接在你代码那个文件夹中做)依次执行以下代码 输入自己的名字、邮箱、自己的仓库地址。创建仓库,没有仓库放不了代码。

2023-11-09 18:11:42 220

原创 java进行支付宝支付(沙箱环境)

根据前端选择的商品id/编号,传入后台后,调用AlipayTradePagePayModel进行参数设置,最后通过AlipayTradePagePayRequest,设置1支付成功后的回调地址我写的百度2回调在哪个接口暴漏公网的接口,然后执行pageExecute完成签名执行请求。controller层:接口总共7个接口,其中有一个是支付宝回调接口,就是你支付完成后,支付宝调用你提供的接口给你传回调消息,所以需要你这个接口是能够在公网访问的接口,因此对于本地环境来说需要内网穿透。手机沙箱版支付宝扫码支付。

2023-11-01 18:12:27 1113

原创 Java使用正则表达式匹配省市县

城市名等信息不具有有效性,假数据。

2023-10-31 09:38:42 1045

原创 springboot整合日志,并在本地查看

sopringboot进行日志操作并保存在本地

2023-10-30 17:51:16 1114

原创 SpringBoot整合腾讯OCR进行身份证识别

从0到1,申请cos服务器并上传图片到cos文件服务器-CSDN博客。入参有两个值,第一个为图片的云服务器路径,第二个为版面(正面/反面)获取 secretId 和 secretKey,见上文。

2023-10-18 15:54:27 1179

原创 从0到1,申请cos服务器并上传图片到cos文件服务器

申请cos服务器并上传图片到cos文件服务器

2023-10-18 12:01:59 867

原创 GoLang连接mysql数据库

【代码】GoLang连接mysql数据库。

2023-10-13 15:18:10 343

原创 GoLang开发使用gin框架搭建web程序

保证装了Golang的sdk(官网下载windows.zip->解压,安装,配置bin的环境变量)配置阿里云镜像dos:go env -w GOPROXY=https://goproxy.io。拉取gin框架的dos: go get -u github.com/gin-gonic/gin。新建mod和一个main.go,打开命令行,拉取gin,下载慢配置阿里云镜像。下载完导入下载的包,编写简单的get接口。找一个方法,把拦截器名字作为参数放入。配置settings。下边测试一个post。

2023-10-12 17:54:58 1151 1

原创 Redis根据中心点坐标和半径筛选符合的数据

Redis根据中心点坐标和半径筛选符合的数据

2023-10-11 16:48:24 273 2

原创 Java实现防重复提交,使用自定义注解的方式

防重复提交

2023-10-10 17:28:03 410

原创 java生成验证码返回前端图片,后端通过redis存储和校验

springboot生成验证码

2023-10-09 14:22:32 843 2

原创 java中线程池的使用+优雅的spring释放资源

【代码】java中线程池的使用+优雅的spring释放资源。

2023-10-08 11:26:38 344

原创 根据阴历日期获取阳历日期并转化为星座

将阴历(农历)日期转化为(阳历)公历日期,并转化为星座

2023-10-07 18:12:26 112

原创 研磨设计模式day14模板方法模式

现在模拟一个场景,两个人要登录一个系统,一个是管理员一个是用户,这两个不同身份的登录是由后端对应的两个接口实现的,用户登录只需验证库里是否存在,管理员登录时需要验证加密后的密码是否与数据库数据一致。这个方法就是模板方法,然后把父类无法确定的实现,延迟到具体的子类来实现。创建两个模块来分别处理用户和管理员的登录。我们把具体的不同的步骤实现延迟到子类去实现,这样就可以通过子类来提供不同的功能实现了。第一和第三个步骤是必不可少,第二个是可选的(可变的)。我们要实现登录的合并,首先需要一个共同的参数接收类。

2023-08-28 10:48:55 1070

原创 研磨设计模式day13组合模式

思路:将组合对象和叶子对象统一起来。通过引入一个抽象的组件对象,作为组合对象和叶子对象的父对象,这样就统一起来了。本质:统一叶子对象和组合对象,一视同仁全部当成Component对象。必须区分组合对象和叶子对象,并进行有区别的对待。去掉了之前区分组合对象和叶子对象的方法。继承一下这个抽象类,别的没有变化。

2023-08-26 11:55:45 1215 1

原创 研磨设计模式day12迭代器模式

迭代器迭代的是具体的聚合对象,不同的聚合对象应该有不同的迭代器,所以应该抽象出来一个公共的父类,让它提供 操作聚合对象的 公共接口。要有一个统一的方式来访问,那就要定义这个统一的访问方式,那么按照统一的访问方式定义出来的接口就应该是Iterator接口。迭代器迭代的是具体的聚合对象,不同的聚合对象应该有不同的迭代器,所以应该抽象出来一个公共的父类,让它提供 操作聚合对象的 公共接口。要使用迭代器来整合上面两个聚合对象,那就需要先定义出抽象的聚合对象和迭代器接口来,再提供相应的实现。

2023-08-25 17:07:51 957

原创 研磨设计模式day12命令模式

Command:定义命令的接口。ConcreteCommand:命令接口的实现对象。但不是真正实现,是通过接收者的功能来完成命令要执行的操作Receiver:接收者。真正执行命令的对象。任何类都可能成为一个接收者,只要它能够实现命令要求实现的相应功能Invoker:要求命令对象执行请求,通常持有命令对象。Client:创建具体的命令对象,并且设置命令对象的接收者。

2023-08-25 15:12:33 1168

原创 研磨设计模式day11观察者模式

类似发布订阅模式。

2023-08-24 15:50:03 574

原创 研磨设计模式day11代理模式

目录场景代码实现​编辑解析定义代理模式调用示意图代理模式的特点 本质 ​编辑何时选用 我有一个订单类,包含订单数、用户名和商品名,有一个订单接口包含了对订单类的getter和setter现在有一个需求,a创建的订单只能a修改,其他人无权修改定义OrderApi接口Order类,实现订单接口现在创建一个代理类Client解析代理类首先是实现一个名为InvocationHandler的接口。需要持有被代理对象也就是OrderApi,然后通过一个对外提供的方法将代理与被代理绑定起来

2023-08-24 11:57:37 823

原创 java属性映射使用MapStruct的坑

进入之后带代码如下,重写了我映射关系类的接口,并对属性进行赋值,采用的是getter,setter方法。暂时找不到问题出在哪里,为了不报错还是老老实实的getter和setter吧。我把target文件夹删掉后重新运行测试代码,发现又生成了这个Impl文件。此时文件夹生成了UserMapStructImpl。将target也先删掉。看一下target文件夹。并没有那个实现类Impl。

2023-08-23 10:29:56 264

原创 研磨设计模式day10中介者模式

首先有一个中介者接口Mediator,其中有一个changed方法,这个方法代表同事们发生变化后要通知我,然后是MediatorImpl实现定义的接口(相当于主板,并且定义了交互方法,需要注意的是我这个主板肯定要包含cpu,显卡,声卡,驱动等同事的,不然我的信息也没法转交)实现changed的方法,就是怎么交互,从上到下,如果传过来的是驱动的信息,怎么搞,如果传过来是cpu的信息,怎么搞。2.同事在处理完自己的事情后,你得告诉中介者你做了改变,让我心里有数,不能自己想做什么做什么,闷头干大事不交流。

2023-08-21 12:30:28 220

原创 研磨设计模式day09原型模式

克隆完成后,与原型实例是没有关联的,克隆出来的实例属性值发生变化不会影响原型实例。这么做客户端获取的都是同一个实例,都是指向同一个内存空间的,对克隆出来的对象实例进行修改会影响到原型对象实例。与new不同点在于,new出来的属性是没有值或者只有默认值,克隆出来的实例一般是有值的,它的值就是原型实例的属性的值。用订单的原型实例来指定对象的种类,通过克隆这个原型实例来创建出了一个新的对象实例。1.订单处理的对象太过依赖与具体实现,划分的很细。2.为克隆出来的新的对象实例复制原型实例属性的值。

2023-08-20 22:51:39 518

原创 研磨设计模式day08生成器模式

将构建过独立出来,当作指导者,由它来指导装配过程,但是不负责每一步具体的实现。光有指导者是不够的,必须要有能具体实现每步的对象,这些实现对象称作生成器。使用实例:三个数据模型对象不动(头,数据,尾应该展示的东西)Build接口:生成器接口,定义创建一个输出文件对象所需的各个部件的操作package day07生成器模式.实例;import day07生成器模式.ExportDataModel;import day07生成器模式.ExportFooterModel;

2023-08-19 16:45:00 52

原创 研磨设计模式day07抽象工厂模式

我们在装机师傅这个实现过程中,通过调用抽象工厂中的方法,确定我们要创建两个东西,一个是CPU,另一个是主板。在这里请明确:工程师是负责创建CPU和主板的,我们在抽象工厂MyAbstractFactory中说明了type = 1 是创建CPU,type=2是创建主板,所以plan.createProduct()负责创建什么。新建一个抽象工厂,只提供生产商品这一种方法,定义一下类型type,这个type只负责是生产CPU还是主板,不关心什么型号,因为不知道返回的是CPU还是主板,所以类型定义为Object。

2023-08-18 20:45:00 95

原创 研磨设计模式day06工厂方法模式

定义一个用于创建对象的接口,让子类决定实例化哪一个类,Factory Method使一个类的实例化延迟到其子类。

2023-08-17 20:30:00 68

原创 研磨设计模式day05单例模式

3.方法内部怎么实现呢?用属性来记录创建好的类实例,当第一次创建后,将这个实例保存下来进行复用。因为该方法是静态的,因此属性被迫成为类变量加上static。2.私有后别人怎么访问该实例?且不创建实例的访问?public静态方法getInstance()4.如何实现控制实例的创建?在静态方法里面判空 (懒汉式){进来不会创建,判空后才创建}4.进来属性直接给它一个new 实例(),在静态方法中直接使用创建好的实例。在系统运行期间,某个类只需要一个实例就可以了。1.怎么控制实例的创建?

2023-08-16 20:00:00 60

原创 研磨设计模式day04适配器模式

分析上面的问题,根源在于接口的不兼容,功能是基本实现了的,也就是说想办法让两边的接口匹配起来,就可以复用第一版的功能了。

2023-08-15 20:15:00 63

原创 研磨设计模式day03外观模式

客户端想调用abc模块中对外暴露的方法,我们提供一个FacadeFactory工厂,工厂提供创建FacadeApi的方法,FacadeApi有一次性获取所有的方法,但是这个方法不是FacadeImpl直接实现的,是由Factory工厂提供的,FacadeImpl只是知道它从工厂获取它需要的功能,Factory工厂包裹着ABC三个模块的实现。客户端在使用时需要跟各个模块进行交互,对于客户端而言,使得客户端不能简单地使用生成代码的功能,而且一旦某个模块发生变化,还可能引起客户端随之变化。

2023-08-14 11:32:22 55

原创 研磨设计模式day02

解决思路:虽然不让模块外部知道具体实现,但是 模块内部是可以知道实现类的,而且创建接口是需要具体实现的。也就是说对用户可见的只有Api和Factory,所以就不仅仅是new Impl()这么简单的,是有了质的变化。常规使用就是new 一个实现类,但是接口的思想是封装隔离,此时这种方式使用时用户不仅知道了接口名(Api)还知道了具体实现(Impl)。第三步:再回头去看设计模式的理论,有了实际的模式应用经验再看设计模式,会有不同的感悟。中,经过验证的,用于解决在特定环境下、重复出现的、特定问题的。

2023-08-12 20:00:00 53

原创 研磨设计模式day01

关键点:里氏替换是实现开闭的主要原则之一,因为开闭原则的扩展性有一个方法可以实现就是继承,子类继承父类那么必须保证子类能够正确替换父类,也就是里氏替换原则,这样才能够实现开闭,也就是扩展功能。关键点:要做到依赖倒置,典型的应该做到:高层模块不应该依赖于底层模块,二者都应该依赖于抽象;关键点:合理的抽象、分离出变化与不变化的部分,针对变化的的部分预留下可扩展的方式。解释:一个类应该仅有一个引起它变化的原因。难点在于如何区分职责?关键点:对于庞大的接口进行用户定制化的分离。④当前兑现过的实例变量所引用的对象。

2023-08-11 21:45:00 49

原创 一步到位!RabbitMQ从安装到SpringBoot整合

需要安装两个东西1.Erlang(可以理解为基础支持)1.跟我来,进去之后往下拉,点击下面这个2.进去右上角,点击install:windows3.点击之后往下拉。

2023-07-28 16:20:13 215 1

原创 Stream流对返回数据列表中的单个属性进行更改

2.解决方法:1.使用Stream流中的peek方法 2.使用Stream流中的forEach方法。1.问题场景:对后端返回的用户列表中的每一条密码进行解密操作,并将记录返回给前端。数据库存放的是16进制的对称加密数据形式。解密后返回到前端的数据。

2023-07-26 10:44:46 1332 1

原创 java封装分页查询返回类及分页查询方法总结

分页查询封装及实现

2023-07-04 20:14:55 306

原创 从0-1创建Vue项目,整合ElementUI

从0-1创建Vue2.0项目

2023-04-22 23:42:59 3825

原创 Vue获取浏览器携带ticket参数,调用请求获取token存储本地

Vue获取浏览器携带ticket参数,调用请求获取token存储本地

2023-04-07 15:13:21 1609

java接收前端请求体的方式,列举常见的,前端如何定义参数,后端如何接收

java接收前端请求体的方式,列举常见的,前端如何定义参数,后端如何接收

2023-10-10

JVM调优world总结

在实际的开发工作中,有时候会遇到程序突然变得响应缓慢或者内存飙升的情况,这时候就需要对程序进行问题排查和调优,找出产生问题的根源并进行优化。 1.影响程序性能的常见因素 2.调优准备 3.性能调优 4.总结 5.参考文献

2023-10-10

springboot整合Sa-Token 实现前后端分离登录注销功能,刚学习Sa-Token,用来练手,适合初学者。仅作学习使用

springboot整合Sa-Token 实现前后端分离登录注销功能,刚学习Sa-Token,用来练手,适合初学者。仅作学习使用 前端使用html jquery ajax异步请求 后端springboot框架,Sa-Token框架。 jdk使用1.8 mysql 8.0

2022-05-22

finalshell3.6.2安装包点击即可安装

finalshell安装包点击即可安装

2022-01-19

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

TA关注的人

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