自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 资源 (1)
  • 收藏
  • 关注

原创 《Clean Code》核心思想:编写可读、可维护、可扩展的代码

整洁代码的首要特征是可读性。Martin 强调:“代码被阅读的次数远多于被编写的次数”。优秀的代码应该像一篇优美的散文,让其他开发者(包括未来的自己)能够轻松理解其意图。从小处着手:从命名开始改进,逐步应用更多原则定期重构:将重构作为开发流程的一部分,而不是事后补救编写测试:测试不仅验证功能,也驱动更好的设计代码审查:互相学习,共同提高代码质量持续学习:阅读优秀开源代码,学习他人经验《Clean Code》不仅仅是一本技术书籍,它传达的是一种专业态度。

2026-07-09 10:52:59 355

原创 《注解的江湖:一场元数据的“宫斗剧”》

太监宣旨”→ 注解写在类上,反射器执行“圣旨”。创建一个圣旨@Inherited宣读圣旨(放在类上)int age;执行圣旨(反射器调用)// 遍历类上所有的注解,找到我们的圣旨!// invoketry {注解只是一段信息注解不是具体的处理逻辑处理逻辑由其他代码实现。

2025-06-15 20:38:10 451

原创 Spring 6.2.2 @scope(“prototype“)原理

spring scope prototype 原理

2025-02-08 16:47:30 510

原创 编译spring 6.2.2

spring6 编译

2025-02-08 14:56:34 521

原创 【记录】线程池卡死现象

在funA中异步调用funB,由于大量的funA耗尽线程池中的线程,funB一直在等待funB中的任务完成,将funB中的任务放入阻塞队列,但是已经无线程可以使用,无人处理,于是造成了funA等待funB完成,fanB等待其中任务完成,最终导致卡死。在使用线程池时,错误的将completableFuture当成一种银弹,导致线程池卡死。

2024-11-14 11:12:20 406 1

原创 刷算法-- leetcode 96. 不同的二叉搜索树

思路 观察树的组成,可以发现n=3时的二叉搜索树可以由,头节点分别为1、2、3时的所有结果组成! 定义dp[i]为由i个节点组成的二叉搜索树的个数。 确定递推公式,dp[i] = 由1为头节点组成的二叉搜索树个数+由2为头组成的个数+…+由i为头节点组成的个数。 所以,进一步分析: 由1为头节点组成的二叉搜索树个数=左子树个数为0时搜索树个数*右子树节点数为2时的搜索树个数. 由2为头节点时组成的搜索树个数=左子树包含1个节点是的搜索树个数*右子树节点数为2时的搜索树个数 节点数量为2时的搜索树个数=

2023-12-29 12:59:26 937 1

原创 MySQL实战45讲深入浅出索引下

mysql实战45讲笔记

2023-03-03 15:04:35 702 1

原创 MySQL45讲笔记04深入浅出索引上

mysql实战45讲

2023-03-03 12:52:52 581

原创 element ui tree组件setCheckedKeys报错

element ui tree组件报错

2023-02-15 23:10:05 1717

原创 Vue 父组件传值子组件无效

vue子组件接收数据无效,生命周期问题(已解决)

2023-02-03 15:50:23 3553

原创 java.sql.SQLException: Field ‘id‘ doesn‘t have a default value

开发瑞吉外卖遇到了错误

2022-12-30 22:06:25 497

原创 计算机设计大赛心得总结-软件开发组

计算机设计大赛参赛经验总结

2022-07-27 22:49:54 2165

原创 matlab打包jar 失败

matlab报错

2022-07-22 16:08:44 594

原创 洛谷----皮特的烟(递归)

package 刷题.入门; import java.util.Scanner; public class Peter的烟 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); int n = scanner.nextInt(); int k = scanner.nextInt(); int res=get(n, k); System.out.println(res+n

2022-03-26 22:05:38 344

原创 mysql: /usr/local/MATLAB/MATLAB_Runtime/v901/sys/os/glnxa64/libstdc++.so.6: version `CXXABI_1.3.9‘ n

项目场景: 运行在centos中,执行mysql指令出错 mysql: /usr/local/MATLAB/MATLAB_Runtime/v901/sys/os/glnxa64/libstdc++.so.6: version `CXXABI_1.3.9’ not found (required by mysql) centos 问题描述: 执行终端mysql命令出错 原因分析: matlab中的libstdc++与系统自带的冲突。 解决方案: 删除其中一个就可以 1. 查看系统所有关于 'libstdc

2021-12-09 19:44:57 521

原创 java.lang.UnsatisfiedLinkError: org.opencv.core.Mat.n_Mat(IIILjava/nio/ByteBuffer;)J [duplicate]

java.lang.UnsatisfiedLinkError: org.opencv.core.Mat.n_Mat(IIILjava/nio/ByteBuffer;)J [duplicate] 如果你只用maven导入了的话 可以在程序前面加上 以下代码: Loader.load(opencv_java.class)

2021-11-13 12:16:23 3358

原创 matlab代码打成jar包 并在idea中使用

首先要保证电脑安装了jdk1.6(版本不能太高 我以2016的matlab为例)和matlab 在matlab 命令行输入以下: 然后在cmd 窗口中输入 这里两个的版本要是一致的。 在matlab中输入 选择Library compiler 这里可以搜索其他的博主文章来操作(我的不详细); 点击绿色对勾 打包 然后把生成的jar包放到idea,而且还需要安装MCR 然后 还要在项目中再加一个jar包 路径在matlab的MCR的toolbox的javabuilder中 两个jar包如图所示 一

2021-10-03 11:43:42 962

原创 Dubbo 找不到服务

倒大霉,我的老卑鄙 如果你的service 有几个版本 记得再dubboReference上加上 version属性 操!

2021-09-15 16:41:06 327

原创 springboot自定义messageConverter

如果想自定义传输数据的类型 需要设置自己的messageConverter public class YanMessageConverter implements HttpMessageConverter { @Override public boolean canRead(Class clazz, MediaType mediaType) { return false; } @Override public boolean canWrite(Cl

2021-08-24 16:07:13 429

原创 一句话让spring-boot帮我开启浏览器参数内容协商策略

一句话: 背后的原理: 当我们开启参数协商以后在RequestResponseBodyMethodProcessor里 有个方法 有个writeWithMessageConverter 这里包含消息的读和写操作 进入查看发现: 里面有个获取request的可以接受的类型 继续进入 调用了一个内容协商管理器的方法。进入方法 此方法遍历所有的strategy 我们查看此时的策略发现 此时存在两个策略一个是参数内容协商 另外是请求头内容协商。 oh 原来当我们写下那句 spring.mvc.conte

2021-08-24 13:15:49 216

原创 HttpMessageConverter原理

1.判断当前响应是否有了确定的媒体类型。 2.获取客户端支持的接受类型。(header accept 字段 ) 这里用postman故意设置为xml 然后找到一个合适的converter进行write

2021-08-23 15:51:52 172

原创 spring-boot源码分析--响应json 返回值处理

1,spring-boot 引入web包后带有json的stater。 只需在类方法上面responseBody就可以。 2,有返回值解析器returnValueHandlers进行处理。 3, 执行完这个方法后,得到返回值,进行一些返回值安全判断后。 4,使用返回值处理器进行处理。 下面分析这个方法怎么处理: 1.首先调用了这个方法: stepover --》stepinto 2.来到真正的处理方法中: 首先,选择一个对应的handler 返回值处理器会判断返回值处理器是否支持处理该类型返回值,支

2021-08-23 14:27:36 557

原创 2.7.11,java.lang.NoSuchMethodError: org.apache.curator.framework.recipes.cache.NodeCache.getListenab

在学习zookeeper与dubbo时出现该问题 建议降低 curator包的版本 改为4.x以后解决 参考文章

2021-08-08 15:33:32 1076 1

原创 初学算法之---递归汉诺塔

package 蓝桥杯算法课.递归; /** * @ClassName 汉诺塔 * @Author ACER * @Description ToDo * @Date 2021/7/30 14:51 * @Version 1.0 **/ public class 汉诺塔 { public static void main(String[] args) { //将前n-1个盘子 从a移到b c作为辅助。 //从上往下 盘子由大到小 //先假

2021-07-30 15:33:45 148

原创 初学算法之---递归的插入排序

如下: /** * @ClassName 排序 * @Author ACER * @Description 找重复,找到一种划分方法,找到递归公式等价转换。都是去划分子问题 * 找到出口。找变化的量,通常要作为参数。 * @Date 2021/7/26 21:04 * @Version 1.0 **/ public class Main{ public static void main(String[] args) { int []arr={1

2021-07-26 21:31:01 202

原创 初学算法之---pta吉老师回归(简单题)

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; /* 只做难题,那就保存难题。输出就行了。。。 */ public class Main { public static void main(String[] args) throws IOException.

2021-07-22 15:26:20 443

原创 初学算法之---pta 福到了

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /** * @ClassName 福到了 * @Author ACER * @Description ToDo * @Date 2021/7/19 21:14 * @Version 1.0 **/ public class Main { private static BufferedReader r.

2021-07-21 22:45:08 371

原创 初学算法之---pta fun with numbers

#include<stdio.h> #include<math.h> #include<string.h> int main(){ char a[21]; char b[21]={0}; scanf("%s",&a); int len=strlen(a); /* for(int i=0;i<len;i++){ array[i] } */ //统计数字出现次数 下标就是数字 int num1[10] = {0}; f.

2021-07-16 21:51:50 134

原创 初学算法之二叉树---求树的高度 pta

#include <stdio.h> #include <stdlib.h> #include <algorithm> typedef char ElementType; typedef struct TNode *Position; typedef Position BinTree; struct TNode{ ElementType Data; BinTree Left; BinTree Right; }; BinTree CreatBinT

2021-07-15 22:07:52 271

原创 初学反射之---类的加载于classLoader的理解

意思就是: 将class文件加载进内存,生成Class对象 将二进制代码合并到jvm中,由jvm分配static的内存。将常量名替换成地址。 然后将所有的类变量赋值动作和静态代码块中的语句合并,执行clinit方法; ...

2021-07-13 13:47:24 147

原创 初学算法之枚举---拨钟问题

分析:每次拨动钟顺时针转动90°的效果 就是将数值加一 是0到3的循环,钟状态总共有四种:0 1 2 3 枚举四种状态 先枚举A B C的状态, 确定A B C之后, D E F也可以确定因为只有 D E F 才能改变A B C状态 拨动次数:0次和4次是一样的效果 package 枚举; import org.junit.Test; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStre.

2021-07-12 22:43:16 295

原创 初学算法之动态规划---求最长公共子串

package 动态规划; /** * @ClassName 最长公共子串 * @Author ACER * @Description 例如asdb asd 最长公共子串是asd * @Date 2021/7/11 19:45 * @Version 1.0 **/ public class 最长公共子串 { static char[] chars2 = "ssdf".toCharArray(); static char[] chars1 = "asd".toCharArray()

2021-07-11 20:19:45 158

原创 初学算法之动态规划---最长上升子序列

package 动态规划; import java.util.Arrays; /** * @ClassName 查找最长子序列 * @Author ACER * @Description 对于 1 2 3 6 5 最长子序列是 1 2 3 5 * @Date 2021/7/11 15:57 * 动态规划,将问题分解为子问题 :以ak为终点的最长子序列。 * @Version 1.0 **/ public class 查找最长子序列 { public static void main

2021-07-11 17:04:26 116

原创 初学算法之分治---求逆序数

package 分治; /** * @ClassName 求排列的逆序数 * @Author ACER * @Description * 对于261数组,有逆序数(6,1) * 给定一个数组 求其 * 逆序数 * @Date 2021/7/11 10:25 * @Version 1.0 **/ public class 求排列的逆序数 { public static void main(String[] args) { int array[]={2,6,3,4,5

2021-07-11 12:37:20 238

原创 初学算法之分治---快速排序

/** * @ClassName 快速排序 * @Author ACER * @Description * 第一遍遍历作用是先将k=array[start]放置于数组中间左右两 边 分别小于k和大于k *遍历方法:数组头尾放一个指针,当两个这个指针数据不同时判断两个数大小交换位置 * 如果符合大小顺序则移动指针 直到不同大小 * 一回合结束后 ,递归以k为中点,左右递归。 * @Date 2021/7/10 21:38 * @Version 1.0 **/ pub

2021-07-10 22:28:44 115

原创 算法学习之分治---并归

/** * @ClassName 并归排序 * @Author ACER * @Description ToDo * @Date 2021/7/10 20:11 * @Version 1.0 **/ public class 并归排序 { public static void main(String[] args) { int [] a={1,5,1,3}; int [] temp=new int[10]; mergeSort(a,0,a.

2021-07-10 21:09:51 126

原创 初学算法之递归---放苹果

/** * @ClassName 放苹果 * @Author ACER * @Description 把M多个同样的苹果放在n个同样的盘子里 * 允许有的盘子空着不放问共有多少不同的方法。 * * 分析:有两种情况:1.盘子数大于苹果数 f(m,m) * 2.盘子数小于苹果数 有两种情况: * 一,存在空盘子情况,二,不存在空盘子情况 * 存在:f(m,n-1)意思把m个苹果放在n-1个盘子里 空出.

2021-07-10 16:05:17 185

原创 初学算法之递归---爬楼梯

/** @ClassName 爬楼梯 @Author ACER @Description 输入楼梯的级数,输出总共的走法。 例如:楼梯共有三级,可以先走一级再走两级。。。等等。1<=N<=30 @Date 2021/7/10 15:00 @Version 1.0 **/ public class 爬楼梯 { public static void main(String[] args) throws IOException { BufferedReader reader

2021-07-10 15:18:34 142

原创 Java如何在web项目里,持续运行方法处理消息

在ctwing平台遇到了问题,由于没有经验。很是困恼, 然年后从网上找到了相应的方法。 第一步,将要运行的方法的类 实现runnable接口。 第二步,实现listener 如图。 第三步配置你的web.xml 。 完成 ...

2021-06-15 15:42:17 1659 3

原创 html 使用shiro标签 thymeleaf

这是spring.xml的配置文件, <!--使用thyme leaf--> <!--视图解析器--> <bean id="templateResolver" class="org.thymeleaf.spring5.templateresolver.SpringResourceTemplateResolver"> <property name="prefix" value="/"></property>

2021-06-13 11:46:03 1530 1

shell万年历课程设计

课程设计

2022-07-02

空空如也

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

TA关注的人

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