自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 SpringCloud-seata集成到nacos

更复杂的还有建立seata集群,大家可以研究下。我们打开seata的文件夹,然后把application复制粘贴一份留痕。(如果启动seata报错找不到mysql的jar包,按照错误提示,把这个jar包放在它提示的路径下就可以。1.我们把file.conf,放在resources下新建的backup_configs里面,废弃不用。然后我们启动nacos,再启动seata,最后启动微服务。上面可以看到,连接了数据库,我们需要手动创建一个seata数据库。前面我们的seata是在项目里面直接配置的。

2025-06-12 23:53:12 93

原创 SpringCloud学习笔记-5

有时候我们需要自定义断言规则。假设我们需要判断,参数中需要有一个叫user,并且值是lbjwade。创建断言类:输入: predicate.VipRoutePredicateFactory@Component@Override@Override@Override@Validated上面代码是仿照 QueryRoutePredicateFactory这个类的来写的。因为Query是已经做好的匹配规则。

2025-06-12 02:28:32 392

原创 SpringCloud学习笔记-4

系统规则和授权规则,由于不常用,而且有相关的替代,这里不多做详细了解了。授权规则替代方案:网关、权限框架、业务流程。系统规则替代方案:K8Ssentinel配置规则后,如果重启服务,配置的规则会消失。如何持久化,这个需要再找资料完善下。

2025-06-08 21:34:01 1005 1

原创 SpringCloud学习笔记-3

声明:笔记来源于网络,如有侵权联系删除。

2025-06-06 22:56:40 1001

原创 SpringCloud学习笔记-2

答:当微服务发起请求时,会向注册中心请求所有的微服务地址,然后在向指定的微服务地址发起请求。在设计实现时,如果每次都向注册中心发起请求,然后在调用微服务地址,这样浪费性能。这时会有一个实例缓存的东西来解决这一问题。当发起请求时,先从实例缓存中查找,如果有,就直接用里面的微服务地址调用。如果没有,就向注册中心发起请求,获取微服务地址,然后在放入实例缓存中,接着调用微服务地址,下次调用时,就直接从实例缓存中拿来用。同时实例缓存和注册中心也是有一个实时更新的同步机制。

2025-06-06 15:34:01 810

原创 SpringCloud学习笔记-1

当有多个数据库时,如果有这样一个场景:用户下订单,需要用户微服务操作用户库给用户加积分,同时需要订单微服务操作订单库进行订单的创建操作,那么当两个操作有任何一个发生异常时,事务需要回滚,如果是多个数据库,这就需要用到分布式事务了。配置中心:一些常规的配置变量,可以在注册中心配置,这样有变更时可以直接在配置中心修改,简化了操作,而不用在服务上重新打包部署,同时配置中心可以推送变化给服务,这样服务不用下线就可以完成更改。注意这里应该是查数据库,这里我们是模拟下,不查数据库了,只是为了讲解nacos的用法。

2025-06-05 15:55:09 929

原创 assertEquals ambiguous method call

上述代码,两个方法都可以用,编译器就很纠结了,爆红给你看了。或者改成下面这样,也可以。两个参数类型一致就ok的。如上图,爆红没有了。

2025-06-03 16:05:36 205

原创 获取当前系统运行环境是生产还是测试

我接触的这个项目比较特殊,他是用的@Mapping这种,在项目启动的时候就给对象赋值,在这个时间点,可能@Value @Component这种获取当前系统环境的bean还没有注入,就会导致无法判断当前系统运行环境,无法实现目的。代码如下,大家可以试试。我们这个项目,业务方要求是每个季度的特殊月份才可以执行业务,但是测试的时候,可能当前月份并不在特殊月份里面,按普通逻辑就无法进行测试了,所以需要做一个功能,按照当前运行环境,生产走正常逻辑(特殊月份才可以执行业务),测试环境则把所有月份都放开,随时可以进行。

2024-08-15 10:21:58 237

原创 org.hibernate.HibernateException: No Session found for current thread

后来想了下,自己的代码写的不规范。我是直接在引用service的地方直接跨级引用了dao层,试了下,不直接用dao查询数据库,而是引用service,然后好了。这个原因网上说修改xml配置,事务配置等。这个我不敢动,因为项目太老了,怕整坏了。老项目,需要做些查询逻辑。写完觉得没啥问题,运行报错了。如上图,注释掉的为原来的报错的,下面的为新的,结果不报错了。

2024-07-16 14:04:28 291

原创 Expected ‘,‘ instead of ‘u‘

数据中带有\,用空字符串替换后,提示 Expected ',' instead of 'u'点击格式化,即可以json的形式浏览数据了,简单明了,要的是这个效果。解决方案:把jsonData的值的最外层的双引号去掉,变成下图这样。这种情况可能是json里面嵌套json。

2024-03-17 21:07:09 602

原创 项目部署报错,找不到start.sh文件等错误

最近项目部署报错,报找不到start.sh文件等错误。后来查看发版文档,发现里面有说明,需要再打包时将文件格式从crlf改为lf。这种情况,其实是之前按照发版文档操作了,后来由于某种原因重新拉取了代码,没有按文档说的重新改文件格式,导致这种问题。这样发版应该就没问题了。

2024-03-05 06:04:40 347

原创 idea配置h2数据库后,无法执行sql语句(schema.sql)

remote是重复使用),设置用户名和密码(这里的用户名和密码要与properties里面的配置的一致),点击apply。但是后来我发现,选了embedded后,再次打开,他还会变成remote。后来研究了下,这个always模式,是每次都重新执行schema.sql。如果设置成never或embedded,则每次运行,上次的数据也会保留。下图中,我的电脑,c盘,用户,昵称里面,最下面的两个文件就是,直接删除。如下图,always情况下,每次都是同样的结果。原因:h2数据库本地有缓存,会默认使用本地缓存。

2024-02-16 17:18:09 1773

原创 XXX中没有主清单属性

4.把上图中的mainClass下面的skip=true注释掉。2.网上搜,说有种解决办法是引入。1.运行项目报标题中的错误。3.看到自己项目中已经引入了,5.再次运行,成功。

2024-02-10 15:33:39 229

原创 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile

后来发现,是我安装过两个jdk版本。一个jdk1.8,一个jdk17。在cmd中运行java-version,显示是1.8,在cmd中运行mvn -v ,里面jdk也显示1.8。而我的项目需要1.8,所以报错了:无效的目标发行版1.8。2.这时候,在idea终端运行java-version,说明版本已经是对的了。网上找的方法就是,关闭idea,过一小会在打开。这个问题大体就是jdk安装了多个,但是执行命令mvn时用的,跟项目需要的版本不一致。1.环境变量里面,修改成正确的jdk版本1.8。

2024-02-10 14:24:51 455

原创 mvn : 无法将“mvn”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。

mvn命令打包报如上错误。如果idea还没配置mvn,那就网上搜一下,下载mvn并配置,电脑中环境变量里面也要配置。如上还是报错的话,那就试试打开idea的时候,右键选择以管理员身份运行。如上图,一开始报错,其实mvn啥的都配置好了。如上图,打开idea时,右键,选择以管理员身份运行。

2024-02-10 14:11:16 769

原创 分页工具类IPage使用

4.dao层(mapper层)3.serviceImpl层。1.controller层。2.service层。

2024-02-08 10:41:12 547

原创 postman免登录、调用需要登录的接口

直接上操作步骤。

2024-02-06 00:06:58 3557 2

原创 postman获取excel文件

有时候写完输出excel文件的接口,不太好测试,不知道怎么用postman返回excel文件的小伙伴往下看。

2024-02-05 23:58:35 2024 2

原创 rocketmq消费消息

最近写了一个对接mq的功能。用的是rocketmq-client。老项目了,用这个手写的比较好实现。网上能找到很多这个。但是都没有提到,拿到消息后怎么消费,而是在分析什么源码(我小白,不想知道源码,就想先知道怎么用)。只能去问其他同事。下面从头开始到如何消费,简单介绍下。

2024-02-03 08:53:32 493 1

原创 Error updating database. Cause: java.sql.SQLException: Connection is read-only. Queries leading to

比如说上面这种配置,就是方法里面包含有get、find、query的(以这个开头的),就会默认你是查询,如果你这个方法其实是更新数据,那就报错了。所以解决办法就是,如果你是更新数据的方法,那就不要出现get、find、query,另外起一个别的名字。最近公司一个老项目,更新数据库报这个错误。一般是方法名字不对(配置里面设置了,比如说,方法名字中带有get的,不让修改数据)。-- 事务的传播特性 -->

2024-02-03 07:41:25 552 1

原创 找不到符号

1.删除项目中的target文件,如果你不确定是哪个,那就有target的地方都删了。因为项目中可能有多个地方有这个。但是后面install也要每个地方都操作。请教了公司大佬,他说可能是idea有问题。maven clean compile package install都试了也不行。最近公司一个老项目,修修补补,改些东西,稍微写点接口代码,本地启动测试没问题,一打包发版就报错找不到符号之类的,或者干脆编译都不成功。2.maven,先clean,然后Install。在此膜拜(架构师大佬还不到30,牛)

2024-02-03 07:33:26 325 1

原创 类文件具有错误的版本61,应为52 ContextConfiguration

解决方案:报错会提示哪个类。一般是引入这个类的依赖时,导入的版本过高。删除导入的依赖,重新引入。导入的时候不要直接点Import class,点击右边的More actions。最后,在界面上import class,就会导入刚才选的低版本。自学spring买了一本书,敲里面的代码,启动项目上面的错。然后点击下图的Add Maven dependency。出来后不要直接add,而是点击左边的小箭头。启动项目,运行成功(我的是一个测试类)然后选择一个低版本的,add。

2024-02-03 07:24:45 959 1

原创 mvn 打包 找不到符号 方法

网上整了半天,没解决。后来问公司大佬,大佬说,直接用idea的package打包就行。如上图,直接点击lifecycle里面的package按钮打包。一个项目,用mvn 命令打包,报错 找不到符号啥的。半信半疑,试了下,果然发版没问题。如果命令报错的,可以试试。

2023-11-15 16:33:58 221

原创 Failed to invoke the method

Dubbo提示这个错误。网上搜了很多,有说类没有实现序列化的,有说没有扫描到包的,有说是电脑上有真实地址和虚拟网址,虚拟网址导致的。都尝试了下,没解决。最后搜到一篇文章,说是原因可能是实体类里面有的变量用的LocateDateTime这个类型。我的确实是,创建时间和更新时间都是LocateDateTime,改成Date类型,错误解决。总结:老项目,有些不支持特定的数据类型。比如我这个就是,不支持LocateDateTime,只能用Date。

2023-10-29 14:36:27 309 1

原创 java.lang.LinkageError: loader constraint violation: loader (instance of org/apache/jasper/servlet/J

启动项目正常,访问网页报错。网上很多说配置scope:provided 的,试了不管用,也有说本地电脑有个jar冲突了,需要删掉,但是我找了下我本地就没这个jar包。而且我的错误跟网上的还不太一样,后面是什么tomcat manage 错误啥的。大概意思就是已经加载了tomcat类。我是用jetty启动报错的,那就试试换tomcat启动,结果启动成功,后续网页访问也正常。解决冲突不能死板,灵活处理。

2023-10-19 06:44:26 350 1

原创 自己写的jar包,导入项目使用。import提示cannot resolve symbol‘xxx‘

我就是自己学java的时候,在cmd控制台使用jar cvf customer.jar object 生成了一个jar文件,然后就把这个jar放在项目中按照网上的教程导入,但是在import的时候,代码报错cannot resolve symbol 'xxxxx'。后来才发现,jar包并不是我在cmd生成的那种,而是要经过一些处理的jar包。system依赖不是由maven仓库,而是本地的jar包,因此必须配合systemPath标签来指定本地的jar包所在全路径。Dversion 版本号。

2023-10-04 16:12:39 541 1

原创 the right syntax to use near ‘order(order_no) values (

明明是一条简单的语句。原因很简单,就是表名字跟mysql的关键字冲突了。order是表名,但是order在mysql里面有排序的意思,是关键字。解决办法:修改表名。如果一定要用的话,那把字段用 ``包起来试试。`` 是键盘上esc下面那个键。用mybatis进行数据插入报错。

2023-08-22 14:54:04 213 1

原创 遍历集合(元素)并添加到list时踩得坑

一开始觉得,这个值应该是0.因为第一元素是i=0时设置的。但是事实是,五个元素的No值都是4,也就是最新的值会把前面的值都覆盖。因为m是在循环外面声明的,只有一个内存空间,5个元素都指向它,它被改动,5个元素其实都改了。正确的方法应该是如下,把对象m声明在循环条件里面。总结下就是,循环里面往list添加对象时,一定要把对象声明在循环条件内部,不然值会被覆盖,达不到自己想要的结果。这时,控制台应该输出的这个值就是0了。5个元素的No属性值依次为 0 、1、2、3、4。这个坑浪费了大半天的时间。

2023-06-12 00:10:01 226 1

原创 sql学习 dual 、 + 、null、1=2

在sql中没有字符串连接的作用,就是表示加法运算,此时会把字符串转化为数值,如果字符串不能转化为数值,就按0处理。sql中要用concat连接字符串。想要从表里查出0条数据。筛选条件可以用 1=2。因为1永远不等于2,所以肯定查出来是0条数据。null:null如果参与运算,结果是null。

2023-03-06 14:13:19 405

原创 mysql学习笔记。着重号、IFNULL、常量查询、 DESCRIBE

数字键1左边那个键就是着重号。用法:当数据库中表名或者字段名字与关键字一样时,会报错。比如有个表的名字是 select ,这时候运行sql就会出错。解决方法:把表名用着重号括起来: `select`:用法:IFNULL(a,b)。表示如果a的值是null,那么就取b的值。:在结果中加一列常量,每一行的值都是这个常量。: 用法:用来显示表的结构。

2023-02-11 09:43:05 401

原创 You can‘t specify target table ‘dcc_authentication_center‘ for update in FROM clause

上面的代码就会报错You can't specify target table 'dcc_authentication_center' for update in FROM clause。修改如下就不会报错了。mysql出现这个错误。原因是,在同一个sql语句中,先查询出一定条件的数据,然后再操作这堆数据,这时候就会报错。解决办法很简单,就是给查出来的数据起个名字,再去操作这个表就可以了。就是把后面查出来的数据先命名为一个表a,在进行操作。

2023-02-07 14:57:31 64

原创 mysql 根据不同的数据返回不同的字段

select (case when a.status = 8 THEN '是' else '否' END)是否成功 from a .....查询表a中的数据,将结果的列名命名为“是否成功”,当表中的status为8时,返回是,否则返回否。

2023-02-06 14:24:38 1117

原创 excel表,如何把多条内容处理后提取出来

excel表,如何把多条内容处理后提取出来

2023-01-14 17:05:23 528

原创 concat 使用方法

concat 使用方法

2023-01-02 21:06:27 293

原创 利用反射将数据复制给实体类

利用反射将数据复制给实体类

2023-01-02 20:04:17 138

原创 第一篇文章

听说写博客很重要,所以就来了。现在年纪大了,不倦不行了。

2022-12-29 22:34:53 61

空空如也

空空如也

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

TA关注的人

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