- 博客(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
原创 【记录】线程池卡死现象
在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
原创 java.sql.SQLException: Field ‘id‘ doesn‘t have a default value
开发瑞吉外卖遇到了错误
2022-12-30 22:06:25
497
原创 洛谷----皮特的烟(递归)
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
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅