- 博客(29)
- 收藏
- 关注
原创 controller中的参数注解@Param @RequestParam和@RequestBody的不同
现在controller中有个方法:(LoginUserRequest是一个用户类对象)现在讨论三个注解的区别,测试统一用PostMan测试,在博客最后进行总结。
2024-11-27 23:23:56
738
原创 springboot 文件下载
org.apache.catalina.connector.ClientAbortException: java.io.IOException: 你的主机中的软件中止了一个已建立的连接。当然,在出现错误时,我在想是不是application/octet-stream的问题,也使用过multipart/form-data,但也是一样的结果。在springboot中,执行如下代码实现文件下载。找了很久的解决方法,但是没有发现什么正确的答案。
2024-11-20 21:25:20
1417
1
原创 springboot 异步操作
future.get()` 和 `future.join()` 都是用于处理并发编程中异步任务的结果,但它们属于不同的编程框架或库,并且具有不同的用途和行为。- **库**: Java 的 `Thread` 类或 Kotlin 的协程(`join()` 在 Kotlin 协程中表现为 `await()`)。- 在 Java 中,`thread.join()` 会使当前线程(调用 `join()` 的线程)等待,直到目标线程终止。- `join()` 是 Java 线程的方法,用于等待一个线程完成。
2024-11-19 22:03:47
2221
原创 切片文件合并
在前后端情况下,存在前端传输大文件到后端,此时为了响应速度和带宽,前端会把大文件切片成小文件在传输,而后端需要再得到最后一个小文件后,将所有小文件合并成为原来的文件。首先,为了防止生成原来的文件后,与同目录下有的文件重命名导致覆盖冲突报错,写几个方法生成新的名字。介绍了,获取当前时间的字符串表示,那能不能把生成新文件名字的时间字符串使用有时分秒格式的?比如:test.txt第一个切片名字 = test.txt1。切片临时储存的文件名字为 原来文件名字+index。
2024-11-16 13:31:56
533
原创 aliyun 短信服务配置
endpoint固定值: https://api.aliyun.com/product/Dysmsapi。springboot 集成aliyun短信服务。开通服务,添加资质、签名、模版。
2024-09-11 23:23:42
961
原创 elasticsearch-head 插件安装报错
参数用于npm install在安装phantomjs-prebuilt@2.1.14时忽略package.json中设置的脚本,意思就是避免package.json中的脚本影响包的正常安装。解决方法:先安装phantomjs-prebuilt。进行安装依赖时,会报错。
2024-08-12 23:09:58
416
原创 【ES】elasticsearch/kibana添加ik分词器后启动失败
在添加ik分词器后,elasticsearch 或者 kibana 莫名启动失败。1、ik、elasticsearch 、kibana三个的版本请保持一致!2、这些文件路径上文件名不能有空格!
2024-08-12 19:22:23
280
原创 vue/springboot解决跨域问题
跨域是指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制。例如:a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了跨域访问,也就是不允许跨域请求资源。注意:跨域限制访问,其实是浏览器的限制。理解这一点很重要!!!同源策略:是指协议,域名,端口都要相同,其中有一个不同都会产生跨域;可以参考 Web安全 - 浏览器的同源策略。
2024-07-09 17:32:47
445
原创 aliyun Oss 文件上传服务
使用aliyun Oss 存储服务实现图片/文件的上传。首先,去阿里云开通oss存储服务,并创建bucket存储空间,此文不赘述此过程。
2024-07-01 11:52:03
421
原创 centOs 7.8 (Linux) JDK17安装+环境配置
注意,第一行的JAVA_HOME 是解压完存放jdk的位置,一定不要写错了!!!!!!!!
2024-06-22 19:04:34
5085
原创 springboot 项目全局异常捕获类
其中@ExceptionHandler 中的value属性 可以指定要捕获的异常 ,我这里是捕获所有异常,所以使用Exception.class ,比如可以细化,捕获特定的异常进行处理。在springboot项目中,通常会使用全局异常捕获类来捕获处理所有的异类情况,比起用try catch 处理更加简洁美观。全局异常捕获类所使用的注解是@RestControllerAdvice 和 @ExceptionHandler两个。接下来用postman 进行测试。
2024-06-16 16:36:34
406
原创 JWT的使用,以及在springboot项目中配置token和拦截验证
jwt生成的token是一个字符串,由三部分组成,分别是Header、Payload、Signature。Jwt常用来生成token和解析token去实现登录检验功能。本文不会重点介绍jwt的各个部分,对jwt组成感兴趣请参考博客。由于是简单介绍,所以不会使用service和mapper。把jwt令牌的签名秘钥和过期时间等。这种写法不会使用jwt配置类。出来,下面还会有更好的写法。
2024-06-13 23:42:44
1114
原创 java自定义注解未生效,调试debug显示未进入校验类
对于一个entity类的属性,加了自定义的校验注解@PhoneValidatorAnno(required = true)但是启动项目测试,发现无论输入什么错误格式都没被拦截,通过debug发现根本没进入校验的逻辑处理类中进行处理。第一种情况,如果是这个依赖,需要实现配置类注入以下的bean。然后查询各种资料,发现的是与依赖有关,先前我引的依赖是。则不需要注入bean即可实现校验注解。第二种情况,如果是添加的是这两个依赖。
2024-05-21 23:47:21
828
原创 springboot校验注解@NotNull不生效
结果是注解使用的问题,String类型不能用@NotNull,更换@NotEmpty即校验成功。在之前包名为 javax.validation.constraints.NotNull;本人在Entities类属性中加上校验注解@NotNull,发现注解不生效。一开始我以为是依赖版本的问题,现阶段的@NotNull的包名为。访问url,当password为空时,显示通过。但换了包名报错,于是降低依赖版本,但也没用。
2024-05-20 21:06:54
1788
原创 springboot和mybatisplus整合报错
报错Invalid value type for attribute ‘factoryBeanObjectType‘: java.lang.String或者xxxController/xxxService/xxxMapper的bean无法被创建。原因mybatisplus中的mybatis-spring版本过低,手动排除并手动加入mybatis-spring的依赖。
2024-05-19 16:00:42
448
3
原创 JAVAEE启动tomcat连接数据库报错
注意,在javaee中,tomcat启动,访问并且去实现第一次有关连接数据库的情况,会报一个错,即无法找到JDBC中的Driver类。(并且在你的项目中已经把JDBCjar包添加为库的情况下)解决办法:打开电脑中tomcat的目录,选择libs文件夹,把JDBC的jar包复制一份到此处。重启tomcat,完成。
2024-05-09 23:48:51
364
1
原创 C语言单链表的创建、扩充和遍历
扩充,由于我们在创建链表时返回的是头结点的指针(注:我这里的头结点并不存储数据),所以要先定义一个结构体指针p去,把 pHead 赋值给他,因为我们接下来还要遍历单链表,所以 pHead 要保留。并且 p 要通过循环使他最后指向尾结点,这样,p->pNext 就是NULL,后面就是我们要扩充的地方,扩充和创建相似,循环创建结构体在让他们连在一起。三个文件:一个头文件depository.h,两个c文件list.c 和 function.c。动态销毁内存也类似,需要循环释放每个结点的内存。
2023-04-19 16:30:04
314
原创 C语言线性结构之连续存储——数组
在学习链表(离散存储)之前应该掌握的动态开辟数组,数组的创建,数组元素的添加,数组的扩展,数组元素的打印的知识。首先在vs编辑器中创建一个头文件depository.h。function.c 是arr.c 中函数实现的c文件.两个c源文件arr.c function.c。
2023-04-17 22:01:42
184
原创 java实现打印n个素数
判断一个数是否是素数的方法应该都知道了,唯一是要注意的点是flag要在最后再赋值true,不然第一趟过后,flag一直是false,导致不会打印剩下的素数,会死循环。
2023-04-13 22:14:30
164
原创 java 打印数字2规律的金字塔
首先三角形画个中线,你会发现两边的数都时2的列数的次方, 2 ^ j。(注意, 次方时需要引入Math包的,不能是以^这种写法)当然,前提是以二维数组arr[ i ][ j ],并且数组的下标都是从0开始。那中线右边呢,由于是和左边对称的,arr[ i ][ j ] = arr[ i ][ 2*i - j ]。打印一个三角形的方法在上一篇博客已经描述了, 这里不在重复。所以我们就可以直接写出代码。
2023-04-04 14:50:38
320
1
原创 java打印空心三角形
条件就是j = 0 或者 j = 2 * i 或者 i = plies - 1 时, 打印 *,其他的打印空格。这个就跟打印九九乘法表差不多,不过每行的 j 要发生改变, 找一个规律。当 i = 0 时,第一层, 空格数为 3个;当 i = 1 时,第二层,空格数为 2个;当 i = 2 时,第三层,空格数为 1个;当 i = 0 时,即第一层 ,j 为1;当 i = 1 时,即第二层 ,j 为3;当 i = 2 时,即第三层 ,j 为5;当 i = 3 时,即第四层 ,j 为7;第一,打印一个三角形。
2023-04-02 00:21:01
1178
原创 C语言打印九九乘法表
system("pause")的作用是暂停窗口,其库函数是#include<stdlib.h>。我们只需要去掉右上角的三角形就行,即将j<=9变成j<=i即可。结果如下,为九行九列的正方体。使用两个for循环,嵌套。开始学C语言,第一篇博客。用C语言打印九九乘法表。首先想一想打一个正方形。
2023-03-10 19:52:12
501
1
空空如也
vue文件中绑定事件错误
2024-05-22
vue文件中绑定事件错误
2024-05-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅