- 博客(37)
- 收藏
- 关注
原创 Java代码实现Httpclient调用-验证码&登录&拦截&获取到列表数据写入数据库
获取验证码图片的配置:UserCodePic。识别图片验证码的阿里云工具类:Toos。登录配置:TestUserLogin。登录数睿通需要的实体类。
2024-09-17 17:05:05
418
原创 Redission分布式-控制用户进行点赞操作
首先需要引入redission相关依赖,然后配置redission客户端,以便可以连接到redission服务器并获取锁的对象,最后在方法中进行代码实现相关操作,需要根据自己的需求和习惯定义一个key,然后以此作为key获取锁,获取锁的同时可以给锁设置一个等待和持续的时间,如果获取到锁了就走if,否则就走else,获取到锁了进行相关操作即可,最后操作完成一定要释放锁,否则会出现死锁的情况。2.编写redission客户端配置。1.引入redission相关依赖。
2024-09-08 22:02:14
516
原创 Java 后端接口入参 - 联合前端VUE 使用AES完成入参出参加密&解密
下面需要注意,我使用的是ruoyi的前段框架,在这里我不能直接将request.js直接替换掉原有的request.js,我是直接手写需要的代码,但是我会给request.js文件放在下面。需要AuthFilter,过滤器中加上相关方法,在这个方法的下面开始加。在utils包下面编写一个AES.js,用于AES加密和解密。我的代码放在这里可以和上面的request.js对比。到这里后端代码已经基本完成,下面开始操作前段代码。编写一个AES加密的utils。主要编写的地方是--->在这个地方进行加密操作。
2024-09-08 21:24:57
1485
原创 Java-在实现图片&视频上传到Minio中,如何控制文件上传的大小限制
【代码】Java-在实现图片&视频上传到Minio中,如何控制文件上传的大小限制。
2024-08-30 11:53:28
897
2
原创 Java 结合elasticsearch-ik分词器,实现评论的违规词汇脱敏等操作
然后可以直接在业务代码中使用工具类即可,注意入参是String,这里我的判断条件是大于0就是存在违规词汇,进行相关操作即可。我直接给相关核心代码封装成了工具类,上半部分代码是用于做分词的,会返回一个集合,这个集合里面存放的都是根据入参分出来的词。下半部分是根据分出来的词做一个检索操作,根据es的索引,检索与集合中词汇对应的敏感词。这个依赖是我使用的,可以结合自己的情况自己选择适用版本的相关依赖。话不多说,直接上后台代码。
2024-08-28 22:28:20
773
1
原创 MinIo - java代码 实现图片上传至Minio桶
点击新创建的桶,然后可以看见详情页面,的Access Policy是Private,我们需要修改这个状态。然后开始写代码,这里我使用的是工厂模式,我就给minio的代码放在下面,可以直接复制使用,复制Access key 和 Secret Key到Nacos相对应的配置文件中。可以看见出现Access key 和 Secret Key。第一步,毫无疑问肯定是创建一个桶(用于存放的容器)然后需要获取权限码Access Keys。这个Name根据自己的需求自定义。可以看见新创建的桶已经完成。
2024-08-28 22:11:55
1008
1
原创 SLF4J 警告 - SLF4J: Class path contains multiple SLF4J bindings.
找到警告项目的pom.xml,如果下载过依赖相关插件就会在文本右边多出一个选项,点击。再次重新启动,可以发现问题已经解决。可以发现有两个相同的依赖项。这里根据情况排除一个。
2024-08-28 19:06:57
888
原创 Java 使用QQ邮箱的接收&发送功能,入门级教程
1.拿到授权码后,导入相关依赖,和yml相关配置,注意修改配置文件的信息。下滑找到POP3...如果没有开启,需要开启,开启后,点击管理服务。3.可以安装格式发送邮件,也可以根据自己的需求定义模版。按照步骤执行完成后,会给你需要的授权码。2.注入JavaMailSender。进入qq邮箱主页面,点击账号。
2024-08-27 20:23:13
607
原创 Java 工厂模式的使用,零基础教程,上手即会
抽象工厂模式提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。优点当一个产品族中的多个对象被设计成一起工作时,它能保证客户端始终只使用同一个产品族中的对象。增加新的产品族很方便,无需修改已有系统,符合开闭原则。缺点产品族扩展困难,要增加新的产品族必须修改接口及其下所有子类。eg:在我们支付的时候肯定不止一种支付方式,那么我们为了减少对象的创建,简化代码,解耦,我们就可以使用工厂模式去实现相对业务:1.创建一个接口,用于给方法实现2.创建需要实现接口的方法,可以根据需求定义。
2024-08-27 18:58:15
674
原创 Git远程管理,使用vpn提供的ip进行Git操作
安装截屏步骤执行就可以,前提是需要再gitlab 中创建的时候指定好vpn的ip地址,才可以操作
2024-08-25 22:24:01
629
原创 Field bwieUserMapper in com.medical.system.service.impl.BwieUserServiceImpl required a bean of type
启动项目后,出现了这个Field bwieUserMapper in com.medical.system.service.impl.BwieUserServiceImpl required a bean of type 报错。一般情况需要在启动类加上@MapperScan ,这次竟然行不通,然后继续找其他问题。在这里发现,是缺少了一个mybatis-spring的依赖。这个项目一般情况是找不到mapper。加上后,可以正常启动了。
2024-08-16 17:09:07
521
原创 Invalid bound statement (not found): com.medical.system.mapper.SysConfigMapper.selectConfigList
因为我用的是多环境配置,nacos的空间不同,所以需要更改为${env}我发现是nacos的配置mybatis包名的路径没有对上,拉取的新框架,启动项目后报错。重新启动,可以看见已经成功!这个错误应该是yml文件的。可以看见我这个地方是dev。重新启动后,又报了一个错误。
2024-08-14 22:36:56
420
原创 java - 调用第三方短信接口,完成发送验证码操作(快速上手)
这个是下半部分,可以不做修改,注意红色区域的是我编写的用于请求的HttpUtils的工具类,需要调用这个工具类,进行操作,可见下文!这个地方我编写了一个测试类,用于短信发送业务,这里的手机号我是用我自己的作为测试,然后使用工具生成一个4位数的随机验证码,用于发送。先编写一个短信工具类,用于短信发送,方法里的魔法值(马赛克)都需要替换成自己可以正常使用的数据 ,其余的可以不做替换,可以正常使用。这个类就是HttpUtils的工具类,我使用的是POST请求方式,可以直接按照我的代码编写即可。
2024-08-13 15:12:37
785
原创 阿里云-java调用短信服务,第三方接口的开启(傻瓜式教程)
点击右侧接口文档按钮,可以进入到接口文档页面,这里可以看见有我们需要的地址和请求方式以及参数返回类型等等,然后点击获取认证按钮。第四步:点击 短信 然后可以进入到短信服务商页面,在这里可以根据自己的需求去选择商家,我这里选择的是第一家。第三步:在最上方的导航栏中,找到云市场,注意不要点击,会自动有触发悬浮框出现,在悬浮框中找到。进入到商品页面后,月考根据自己的需求选择次数,我这里选择的是免费的,点击免费使用即可开始使用。点击发起请求,可以看见我的验证码请求已经发送成功。第一步:在浏览器中,搜索阿里云。
2024-08-13 15:11:40
903
原创 Java 集成JDBC,对mysql数据库进行基本业务操作
这里注意URL、USER 、PASSWORD 填写自己的数据库账号、密码。首先创建一个实体类,可以使用@DATA注解,也可以手动操作(根据需求)编写jdbc工具类,这里我是单独放入util工具包中。根据主键id删除数据库数据。
2024-08-13 11:30:45
282
原创 Elasticsearch-java代码实现,关键词lian想查询检索功能(搜索自动补全,主要用于电商,搜索框的自动联想词展示)
首先需要编写一个用于查询的接口,我这里使用的@RestController 分格开发 使用的是@GetMapping注解,入参根据需求可以自定义。注意:这个地方需要在开始编写接口前定义,否则无法查询到关键lian想信息。这里我对检索的lian想词汇做了一个高亮展示,可以自定义。然后代码中的魔法值和变量根据需求定义即可,没有固定格式。可以看到返回值是可以根据入参,查询到lian想词。需要对入参做好相对的校验,防止空指针异常。这里我使用的swagger测试接口。重写接口方法,核心代码编写。
2024-08-12 14:51:22
378
原创 Elasticsearch-使用java 批量插入文档
开始编写接口,这里我使用的是@RestController风格,然后使用@PostMapping注解,入参根据自己的需求自定义,没有固定规范。这里我使用的开发工具是elastic,在这里可以根据语法进行查询刚刚写入的数据文档。然后重写接口中的方法(编写核心代码)首先创建两个实体类,用于存放所需值。
2024-08-12 14:36:02
419
原创 java 实现-使用OpenFeign 实现远程调用外部接口(调用swgager)接口
注意在Remote接口类中的远程调用方法需要再路径后加上(consumes = MediaType.APPLICATION_GRAPHQL_VALUE)根据所有提供的参考方法和路径,拼接出整体路径URL(http://ip:端口/online/list)这里可以转换前台响应的值,然后通过各种方式转换成自己所需要的值,我这里只做了打印!打开接口后我们可以看见,接口的路径/online/list。这里我给了一个熔断,我一般喜欢加上熔断,根据自己的需求决定。在需要远程调用的类中,使用。以及可以看见入参和出参。
2024-08-12 14:21:23
393
原创 Java 使用Http client (hutool)远程调用外部接口
查看登录后的token值,我做了一个config配置类用于动态获取token。在主要调用方法中按照正常Httpclient方式调用即可。第一步在所需要操作的模块引入hutool依赖。查看调用接口的路径,注意路径格式是否正确。根据提供的接口查看所需要入参。根据入参创建对应实体类。
2024-08-12 14:07:22
1181
原创 使用java代码-实现去重累加,然后添加到数据库
添加到 list中然后通过mapper 映射 写入数据库。写入数据库成功(数据库字段过多,分前后两部分展示)添加语句,使用foreach循环遍历数据写入。假设这是您的数据,以字符串数组的形式给出。然后需要创建一个实体类用于赋值。重新循环赋值到实体类。
2024-08-11 21:46:50
509
原创 后端使用Spring Boot框架 + 前端VUE 实现滑动模块验证码
div class="slider" :style="{ left: sliderPosition + 'px' }" @mousedown="handleMouseDown" @mousemove="handleMouseMove" @mouseleave="handleMouseUp">滑动</div>CORS(跨源资源共享):如果你的前端和后端部署在不同的域上,你需要在后端添加CORS支持,以便前端能够成功向后端发送请求。// 假设的验证码验证逻辑(实际中可能需要更复杂的逻辑)
2024-08-09 14:09:22
2056
原创 net.sf.jsqlparser.statement.select.SelectItem
今天一启动项目,出现了这个错误,仔细想了想,应该是昨天合并代码,导致的mybatis-plus版本冲突,以及分页PageHelper版本不兼容。可以看见这个我是最下边的 Caused by 报错信息,这个地方提示我。在我的项目中,common模块中mybatis-plus 重复导入依赖。在我的server模块中可以看见这个关于jsqlparser依赖。这个依赖是导致项目启动失败的根本原因,一定要将其注释。重新启动项目,可以看见已经可以正常启动!这里我直接将这个依赖注释掉防止重复依赖注入。
2024-08-09 09:36:17
3424
原创 本地http://localhost/端口 通过本地服务,远程调用同一网络下的另一台主机的微服务方法
这里我安装了一个api插件,用于测试接口使用,这里我可以直接复制接口的路径,通过浏览器访问本地接口,然后通过远程掉用服务访问B主机的方法,得到返回值。我使用的spring-cloud框架,在spring-cloud框架中进行操作,我是有一个单独的Remote模块用于远程调用,在这里。这里所有流程基本结束,然后在浏览器中访问路径即可,可以看见我已经获取到B主机响应的数据。第一步:需要添加url路径,这个url是B主机的本地ip地址,注意加上端口号。
2024-08-08 20:41:43
1431
原创 Nginx反向代理,代理H5前端 ,java后端,使用服务器+finalshell+vpn
上一步完成后,那么此时需要配置vpn路径+网关的端口号,(我使用vpn的原因是,我的服务器上只部署了一个网关,其余服务都在本地,所以需要涉及到vpn,否则无法访问),prod-api是前端发送的请求ip+域名,这个prod-api注意需要查看前端的请求。那么我们如果使用80端口,无影响,但是,我们需要反向代理多个服务,此时需要使用,没有被占用的端口,我这里H5前端使用的端口是82。此时所有的步骤已经执行完毕,可以正常使用,在手机移动端已经可以访问,到这里就完成了nginx反向代理。
2024-08-07 19:58:30
596
原创 前端HBuilderX HTML5模版,打包成dist 部署
首先需要修改utils中appConfig.js的ip+路径+域名,使用服务器部署,那么就用服务器的ip,prod-api可以自定义,根据自己的需求起别名。发行点击一次即可,无需多次点击,可能会有延迟,等待一会即可,然后在控制台可以看见。找到manifest.json,如果没有域名,点击重新获取即可。出现这些文件就已经完成dist打包全部过程,根据需求使用即可!找到自己需要的发版,我使用的是网站-PC 手机H5。将获取到的域名,复制到网站域名中,然后点击发行。打包完成后会出现路径,然后点击路径。
2024-08-07 19:34:25
915
原创 若依框架分页和mybatis-plus分页冲突
主体框架使用若依框架在原有框架中,集成新的微服务并使用mybatis-plus,导入相关配置原有框架中使用的依赖中也存在pagehelper分页如果不排除冲突分页,存在多种分页,导致无法启动解决办法:(1)在pom.xml中采用排除依赖中的分页(2)注释mybatis-plus分页配置启动成功:
2024-07-25 10:34:04
507
原创 Docker 本地服务打包成jar包后,在服务器上用镜像启动
其中,-p参数用于指定容器内部端口映射到主机的端口,8080:8080表示将容器内部的8080端口映射到主机的8080端口上。其中,“your-image-name”是镜像名称,“1.0”是版本号,“.”表示Dockerfile文件在当前目录中。我的命令(docker run -d -p 9207:9207 your-image-name:1.0)我执行的命令(docker build -t your-image-name:1.0 .)3.会在你的服务中出现一个target包,下面会有一个jar包。
2024-07-13 09:44:34
513
2
原创 Dockerfile将java项目打包成镜像并运行部署在服务器
2.将打包好的jar包拖入一个文件夹,然后拖入服务器中任意一个文件夹下mkdir新建一个文件夹。6.重启这个镜像docker restart mycontainer。3.然后编写Dockerfile文件,与jar包放入同一个文件夹。4.然后docker build -t myimages ./5.docker images 查看是否已经有这个镜像。7.服务器ip:端口 访问页面/进行其它操作。设定一个端口,用于访问,端口注意不要被占用。
2024-06-14 17:28:01
483
1
原创 GIT安装,Idea配置GIT
设置用户名:git config --global user.name "your username"设置用户名:git config --global user.email"your email"出现下面这样的画面表示安装成功。GIT配置用户名密码。
2024-06-13 17:26:41
396
原创 docker安装kibana
####----------elasticsearch相关----------###### 该 kibana 服务的名称,默认 your-hostname。####----------日志相关----------##########----------其他----------###### 此值为true时,记录所有事件,包括系统使用信息和所有请求。# 此值为true时,禁止除错误消息之外的所有日志记录输出。# 系统和进程取样间隔,单位ms,最小值100ms。# 此值为true时,禁止所有日志记录输出。
2024-06-13 17:16:07
1003
原创 docker安装ES
打开 config 目录。# 创建 数据 挂载目录。# 创建 配置 挂载目录。# 创建 插件 挂载目录。# 创建 es 目录。# 打开 es 目录。
2024-06-13 17:13:01
540
原创 本地Navicat如何快速创建表,如何定义字段和类型
10定义三个字段ctrl+s保存,类型会默认,也可以自定义。1.打开Navicat 16.0.11软件。4.连接成功后会显示绿色,可以自定义名称。13.填写所需要数据ctrl+s保存。3.本地连接就点击MySQL。9.字段,主键自增定义。7.双击鼠标左键打开。8.新建自己需要的表。11可以自定义表名称。
2024-06-13 17:06:53
1229
3
原创 Java打包dockerFiel项目
其中,-p参数用于指定容器内部端口映射到主机的端口,8080:8080表示将容器内部的8080端口映射到主机的8080端口上。其中,“your-image-name”是镜像名称,“1.0”是版本号,“.”表示Dockerfile文件在当前目录中。# 设置容器的工作目录为/home/luo,之后的工作路径都相对于这个目录。#Data-Transmission.jar是你要打包的jar包的文件名。# 将主机上的目录挂载到容器中。# 将主机上的.jar文件复制到容器内的工作路径下。docker rm 容器id。
2024-06-13 16:53:13
994
2
原创 mybatis-plus 增强CRUD
如果是对全表的删除或更新操作,就会终止该操作 https://baomidou.com/guide/interceptor-block-attack.html。* 分页插件,自动识别数据库类型 https://baomidou.com/guide/interceptor-pagination.html。* 乐观锁插件 https://baomidou.com/guide/interceptor-optimistic-locker.html。// 设置最大单页限制数量,默认 500 条,-1 不受限制。
2024-06-13 14:17:09
864
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人