<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[sushiyi651的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/sushiyi651</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; sushiyi651]]></copyright><item><title><![CDATA[Swagger弹窗报错：Unable to infer base url.]]></title><link>https://blog.csdn.net/sushiyi651/article/details/136558103</link><guid>https://blog.csdn.net/sushiyi651/article/details/136558103</guid><author>sushiyi651</author><pubDate>Fri, 08 Mar 2024 13:17:43 +0800</pubDate><description><![CDATA[springboot集成swagger，所有配置都配置好之后，访问：http://localhost:8080/swagger-ui/
出现弹窗报错如下图：


2、未加@EnableSwagger2配置。3、项目中使用了全局统一处理类即@ControllerAdvice或ResponseBodyAdvice，会导致接口返回JSON数据格式和swagger期望的不一样，造成swagger报错。 解决方法很简单，在代码上加上你自己扫描包的范围，因为@ControllerAdvice主要是拦截controlle]]></description><category></category></item><item><title><![CDATA[Oracle 错误：ORA-22922 不存在的 LOB 值]]></title><link>https://blog.csdn.net/sushiyi651/article/details/134180322</link><guid>https://blog.csdn.net/sushiyi651/article/details/134180322</guid><author>sushiyi651</author><pubDate>Thu, 02 Nov 2023 13:39:29 +0800</pubDate><description><![CDATA[网上推荐的方法是使用listagg()函数替代wm_concat()函数，但是这样做必须有个within group (order by ‘字段’)的前提条件。直接无条件查询会报错，加上where 1=1 order by ***可以通过，但是这样又会导致查询条件置于这句order by之后导致报错ORA-00933: SQL 命令未正确结束。交换to_char()和wm_concat()函数顺序，然后在最外层的查询字段再加上to_char()。根据报错信息进行排查，发现是这句SQL出现了问题。]]></description><category></category></item><item><title><![CDATA[BindingResult基础用法]]></title><link>https://blog.csdn.net/sushiyi651/article/details/133127033</link><guid>https://blog.csdn.net/sushiyi651/article/details/133127033</guid><author>sushiyi651</author><pubDate>Thu, 21 Sep 2023 10:44:24 +0800</pubDate><description><![CDATA[在使用@Valid 进行参数校验的时候。可以使用BindingResult对象。这个对象的作用是将所有的异常信息存起来。]]></description><category></category></item><item><title><![CDATA[使用正则表达式提取日志或json字符串中某个key的值]]></title><link>https://blog.csdn.net/sushiyi651/article/details/130992478</link><guid>https://blog.csdn.net/sushiyi651/article/details/130992478</guid><author>sushiyi651</author><pubDate>Thu, 01 Jun 2023 17:33:25 +0800</pubDate><description><![CDATA[首先查找目标 .*"uuid":"(\w+)|(\W*)".* 匹配到，然后替换为 $1替换，最后点全部替换即可。首先查找目标 .*uuid='(\w+)|(\W*)'.* 匹配到，然后替换为 $1替换，最后点全部替换即可。使用notepad++中的正则匹配功能，如图所示。使用notepad++中的正则匹配功能，如图所示。]]></description><category></category></item><item><title><![CDATA[Excel生成UUID]]></title><link>https://blog.csdn.net/sushiyi651/article/details/130967534</link><guid>https://blog.csdn.net/sushiyi651/article/details/130967534</guid><author>sushiyi651</author><pubDate>Wed, 31 May 2023 14:01:43 +0800</pubDate><description><![CDATA[1、Excel生成UUID格式：600d65bc-948a-1260-2217-fd8dfeebb1cd。2、Excel生成UUID格式：BC65D2D39CE5E291E053E5500A120FC0。]]></description><category></category></item><item><title><![CDATA[springboot读取不到bootstrap.yml配置项问题]]></title><link>https://blog.csdn.net/sushiyi651/article/details/128407850</link><guid>https://blog.csdn.net/sushiyi651/article/details/128407850</guid><author>sushiyi651</author><pubDate>Thu, 22 Dec 2022 14:04:46 +0800</pubDate><description><![CDATA[读取bootstrap.yml]]></description><category></category></item><item><title><![CDATA[java去除字符串空格]]></title><link>https://blog.csdn.net/sushiyi651/article/details/127868189</link><guid>https://blog.csdn.net/sushiyi651/article/details/127868189</guid><author>sushiyi651</author><pubDate>Tue, 15 Nov 2022 16:19:11 +0800</pubDate><description><![CDATA[java去除字符串空格]]></description><category></category></item><item><title><![CDATA[mybatis批量写入数据到mysql效率低问题优化方案]]></title><link>https://blog.csdn.net/sushiyi651/article/details/127428913</link><guid>https://blog.csdn.net/sushiyi651/article/details/127428913</guid><author>sushiyi651</author><pubDate>Thu, 20 Oct 2022 15:55:23 +0800</pubDate><description><![CDATA[mybatis批量写入数据到mysql效率低问题优化方案]]></description><category></category></item><item><title><![CDATA[Mybatis查询Oracle一次查询1w条数数据耗时6s分析]]></title><link>https://blog.csdn.net/sushiyi651/article/details/127402837</link><guid>https://blog.csdn.net/sushiyi651/article/details/127402837</guid><author>sushiyi651</author><pubDate>Wed, 19 Oct 2022 10:48:26 +0800</pubDate><description><![CDATA[Mybatis查询Oracle一次查询1w条数数据耗时6s分析]]></description><category></category></item><item><title><![CDATA[布隆过滤器详解]]></title><link>https://blog.csdn.net/sushiyi651/article/details/127228078</link><guid>https://blog.csdn.net/sushiyi651/article/details/127228078</guid><author>sushiyi651</author><pubDate>Sun, 09 Oct 2022 15:54:47 +0800</pubDate><description><![CDATA[布隆过滤器详解]]></description><category></category></item><item><title><![CDATA[ORA-00932: inconsistent datatypes: expected NUMBER got INTERVAL DAY TO SECOND]]></title><link>https://blog.csdn.net/sushiyi651/article/details/125293802</link><guid>https://blog.csdn.net/sushiyi651/article/details/125293802</guid><author>sushiyi651</author><pubDate>Wed, 15 Jun 2022 11:28:32 +0800</pubDate><description><![CDATA[ORA-00932]]></description><category></category></item><item><title><![CDATA[JVM实战内存溢出问题之堆内存溢出]]></title><link>https://blog.csdn.net/sushiyi651/article/details/124431666</link><guid>https://blog.csdn.net/sushiyi651/article/details/124431666</guid><author>sushiyi651</author><pubDate>Tue, 26 Apr 2022 17:51:08 +0800</pubDate><description><![CDATA[1、内存溢出的类型

  堆内存溢出

  栈内存溢出（虚拟机栈溢出、本地方法栈溢出）

  方法区溢出

  直接内存溢出

2、堆内存溢出问题

第一步设置虚拟机参数：-Xms20M -Xmx20M -XX:+HeapDumpOnOutOfMemoryError（当堆内存溢出是dump堆）



第二步编写内存溢出代码


public class HeapOutOfMemory {

    private List&lt;String&gt; list = new Array...]]></description><category></category></item><item><title><![CDATA[可能导致CPU占用率过高的场景及解决方案]]></title><link>https://blog.csdn.net/sushiyi651/article/details/124403142</link><guid>https://blog.csdn.net/sushiyi651/article/details/124403142</guid><author>sushiyi651</author><pubDate>Mon, 25 Apr 2022 13:47:21 +0800</pubDate><description><![CDATA[1、无限while或for循环

  尽量避免使用无限循环

  让循环执行的慢一点，比如循环内加sleep

2、频繁GC

  降低垃圾收集频率

3、频繁创建新对象

  合理使用单例

4、序列化和反序列化

  选择合理的api实现功能

  选择好用的序列化和反序列化类库

5、正则表达式

  减少字符匹配期间执行的回溯

6、频繁的线程上下文切换

   降低切换频率
...]]></description><category></category></item><item><title><![CDATA[JVM实战CPU占用过高问题定位top+jstack方式]]></title><link>https://blog.csdn.net/sushiyi651/article/details/124402822</link><guid>https://blog.csdn.net/sushiyi651/article/details/124402822</guid><author>sushiyi651</author><pubDate>Mon, 25 Apr 2022 13:35:15 +0800</pubDate><description><![CDATA[1、使用top命令，找出占用CPU最高的进程号



2、使用top -Hp 36032，查看36032进程中所有线程的运行信息



3、使用printf %x 36044命令将线程号36044转换成十六进制

4、使用jstack 36032命令将进程栈信息输入到1.txt文件，再用cat 1.txt | grep -A 30 8ccc命令查看进程栈信息，并定位CPU占用过高代码位置。

5、定位代码结果，有死循环






...]]></description><category></category></item><item><title><![CDATA[springboot启动报错“org.springframework.messaging.getHeaders()“ because “message“ is null]]></title><link>https://blog.csdn.net/sushiyi651/article/details/124180480</link><guid>https://blog.csdn.net/sushiyi651/article/details/124180480</guid><author>sushiyi651</author><pubDate>Thu, 14 Apr 2022 20:21:52 +0800</pubDate><description><![CDATA[五封面]]></description><category></category></item><item><title><![CDATA[Ribbon负载均衡策略之RandomRule源码解读]]></title><link>https://blog.csdn.net/sushiyi651/article/details/124122403</link><guid>https://blog.csdn.net/sushiyi651/article/details/124122403</guid><author>sushiyi651</author><pubDate>Tue, 12 Apr 2022 14:08:29 +0800</pubDate><description><![CDATA[Ribbon负载均衡策略之RandomRule源码解读]]></description><category></category></item><item><title><![CDATA[java finally 赋值问题返回探讨]]></title><link>https://blog.csdn.net/sushiyi651/article/details/122298166</link><guid>https://blog.csdn.net/sushiyi651/article/details/122298166</guid><author>sushiyi651</author><pubDate>Thu, 31 Mar 2022 15:44:36 +0800</pubDate><description><![CDATA[1、基本数据类型


​
public class BasicDataType {
    public static void main(String[] args) {
        System.out.println(basicDataType());
    }
    public static int basicDataType() {
        int i = 0;
        try {
            i = 1;
            return i;
    ]]></description><category></category></item><item><title><![CDATA[springboot接口参数注解继承问题]]></title><link>https://blog.csdn.net/sushiyi651/article/details/123076228</link><guid>https://blog.csdn.net/sushiyi651/article/details/123076228</guid><author>sushiyi651</author><pubDate>Tue, 22 Feb 2022 20:14:19 +0800</pubDate><description><![CDATA[API中的接口



controller中实现的接口方法



问题：新框架部署后，原来旧框架能访问成功的接口报参数不匹配错误。

现象：旧框架中，无法继承参数的注解，会以controller中定义的参数名为准。

     新框架中，API接口的参数注解继承生效，如果子类没有重写的话，会以接口中的参数注解为准。

spring-web 5.X 部分堆栈信息如下：

java.lang.Exception: 打印堆栈信息

at org.springframework.core.MethodP...]]></description><category></category></item><item><title><![CDATA[Springboot 属性名首字母小写第二个字母大写导致无法解析参数]]></title><link>https://blog.csdn.net/sushiyi651/article/details/122929359</link><guid>https://blog.csdn.net/sushiyi651/article/details/122929359</guid><author>sushiyi651</author><pubDate>Mon, 14 Feb 2022 17:57:21 +0800</pubDate><description><![CDATA[感觉这是lombok的bug。

属性名如图：



使用lombok的@Data注解生成的getter和setter方法首字母p是大写的，如图：



手动生成getter和setter方法首字母p是小写的，如图：



解决问题：

JavaBean 规范中有一个特别的地方，如果属性名的第二个字母是大写的，那么该属性名直接用作 getter/setter 方法中 get/set 的后部分，也就是说首字母大小写不变，即手动生成getter和setter方法首字母p是小写的。由于lombok生成的gette]]></description><category></category></item><item><title><![CDATA[spring框架BeanCopier属性拷贝问题解决思路]]></title><link>https://blog.csdn.net/sushiyi651/article/details/122875143</link><guid>https://blog.csdn.net/sushiyi651/article/details/122875143</guid><author>sushiyi651</author><pubDate>Fri, 11 Feb 2022 10:30:24 +0800</pubDate><description><![CDATA[项目中存在泛型往具体类型的属性拷贝值如图：



报错



解决办法：

在启动脚本添加-noverify参数，不校验字节码即可。


]]></description><category></category></item></channel></rss>