• DateTimeParseException: Text ‘2025-09-01 13:00:32’ could not be parsed at index 10。jackson/sprng反序列化的时候,用的格式化器不支持中间带空格的日期时间格式。让前端传类似于这种的日期格式就可以了2025-09-01T05:00:32.035Z,不要是2025-09-01 13:00:32这种的,中间没有T,识别不到啊。@DateTimeFormat(pattern = “yyyy-MM-dd HH:mm:ss”)在DTO里面的话,会失效,在Controller中可以用,这里需要注意
  • "".equals(erpRdRecords01DO.getCfree1()这种进行判断的时候最好将“”放在前面,不然后面需要null后,就调用null的equals方法,就会抛出空指针异常,这一点需要注意。
  • No setter found for the keyProperty id。MyBatis 尝试将数据库生成的主键值设置回您的对象中,但是找不到。
  • 将 expression 转换为数据类型 int 时出现算术溢出错误。
  • 不允许从数据类型 varchar 到 varbinary 的隐式转换。请使用 CONVERT 函数来运行此查询。我将函数从ISNULL换成COALESCE就行了,ISNULL是sqlserver的函数,COALESCE是通用函数。这个ISNULL会把格式转化为sqlserver那个类型。
  • 操作数类型冲突: varbinary 与 float 不兼容 。不要在 float 类型的字段插入 null 就好了。(但这个在 MySQL 数据库没有影响。)
  • 默认的随机种子是一天的时刻00.00.00,而不是每天的时刻yyyy MM dd 00.00.00,每次打乱的顺序都一致。直接去查看源代码或者官方文档。
  • bash deploy.sh的时候要使用Unix的换行符,因为换行符在windows和unix中是不同的,unix是用LF(\n) windwos是用CRLF(\r\n)。或者cat deploy.sh的时候,中文出现是乱码,那么就是编码格式的问题,将编码格式改为UTF-8即可。bash使用LF换行符,文件是以Unix格式编码(通常为UTF-8 无 BOM),脚本开头必须有正确的Shebang(#!/bin/bash)
  • 连接SQL Server数据库版本为10的时候,只支持TLSv1的低版本连接,不支持TLSv1.1和TLSv1.2的连接,所以我只能将JDK17中的java.sercurity中的TLSv1.1和TLSv1.2给删除掉,可是JDK部署在容器中,你应该怎么办呢,解决办法就是先复制JDK17容器中的Java.security到本地中,将里面的TLSv1.1和TLSv1.2给删除掉,然后在构建服务镜像的Dockerfile文件中,将java.security复制到容器内部,将原先的给覆盖掉COPY java.security /opt/java/openjdk/conf/security/java.security。
  • 为什么既要有Edge又要有Chrome浏览器呢,清理浏览器缓存,要把Cookie也清理掉,所以前端放在chrome进行开发可以随时清理缓存,edge作为日常工具就不应该如此。
  • 在部署SSL的时候,有一些误区,ssl不是只有443的,其他任何的端口都可以,只不过443是Http的标准。开启ssl不是加ssl on;而是listen 444 ssl;至少我部署的时候是这样子的。证书签发的时候需要已经DNS好的域名,也可以直接用内网的IP地址,都是可以的。在前端部署好后,VITE_BASE_URL= https://192.168.20.84:48080 这么配置是不对的,因为Nginx配置的是在444端口下的https://192.168.20.84:444/admin-api,所以前端需要请求这个地址,后端接收后才会转发到本地的http://192.168.20.84:48080/admin-api中。管哥和我说,一般向后端请求的地址不应该在前端写死,而是应该由Nginx上面配置html路径后,由nginx中的server_name来代理?应该是这个域名。
  • 在mapper中写@Select为什么不能有空格,因为是直接在使用SQL语句,以后可以去到XML里
  • 迁移数据库的时候8.4到5.7发生报错,因为5.7没有一些字符编码规则
  • 启动Nacos的时候,看博客然后一直部署不上去,这种先进技术要先去官方博客上面去查找。
  • windwos的定时任务task_scheduler,要明确是用户登录前启用还是用户登录后启用,就是说开机自启的那种
  • 二维码生成器可以使用hotool+zxing,easyexcel生成导出图片为空白是因为poi版本为5的时候,不兼容,建议改为4.1.2 ,easyexcel版本为4.0.3,改了我好久真的无语
  • el-image preview-teleported 让预览弹窗挂载到body上,完全不受表格/父容器限制。官方的解释是image-viewer 是否插入至 body 元素上。 嵌套的父元素属性会发生修改时应该将此属性设置为 true Table 表格 | Element Plus
  • :formatter 是 Element UI/Plus 提供的 数据格式化接口。
  • <template default>插槽的使用
  • :gutter是el-col间的间距,:span是列的宽度,是基于24分栏的
  • @valid对于嵌套的约束来说,需要额外使用@valid进行标注 为什么前后端都要做数据校验 | JavaGuide 全局异常处理器是怎么抛出异常的?
    • @Validated与@Valid的区别@Validated 是 @Valid 的变体。通过声明实体中属性的 groups ,再搭配使用 @Validated ,就能决定哪些属性需要校验,哪些不需要校验。
  • Base36 的字符集为: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ(或小写 a-z)。Base64A-Za-z0-9+/=数据传输(如 MIME)。Base2 就是01 二进制。
  • MySQL的保留字段desc,如果作为字段名的话,需要进行适当的转义,“ ,@TableField(“desc”),或在XML上修改desc为desc
  • ‘C’!=“C”,在Java中一个是字符串,一个是字符。
  • 父组件传给子组件属性的时候,应写为form-loading(小写中横线风格)而不是formLoading(camelCase),否则Vue识别不到。
  • formRef.value.open is not a function,需要引入弹窗,不引入就会报这种错误。
  • Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? => --privileged=true 是 Docker 容器运行时的一个参数,表示以 特权模式(Privileged Mode) 运行容器。在windows上部署portainer容器管理平台发生的问题。
  • 云服务器和Windows的Docker部署FRP内网穿透,但是连接不到本地IDEA启动的Java项目?1.云服务器开放端口 2.将frp客户端使用宿主机局域网IP,也可以是host.docker.internal(是你在容器或 WSL2 中访问宿主 Windows 的“通用别名) 3.关闭Windows防火墙 4.让Java项目监听所有IP
  • 部署项目时候遇到的问题:1.后端服务与MySQL数据库不在同一个网络中,会造成权限访问的问题。2.将宿主机的13306端口映射到容器内部的3306端口时,如果后端服务是用Docker部署的,可以用MySQL作为Host进行DNS解析,但是必须用3306作为端口进行访问,否则就会出现1的报错。3.Redis和MySQL启动时,要有让外界访问的相关配置,否则无法连接,MySQL会跟版本有关系。4.有些镜像启动后需要获取Docker权限时,可以配置privileged: true。5.构建相同镜像的时候,需要将其前一个镜像删除掉,可以直接写在build.sh脚本中。6.切换配置文件可以直接在yml中设置,也可以通过docker-compose中的环境切换7.遇到解决不了的问题,可以回头看看视频,也可以逛逛贴吧,也可以出去多走走,有时候可能陷在了死胡同里面。8.明天休息一天。