摘要:
2023-05-13 todo Spring Cloud 如何构建动态线程池? 2023-05-12 亿级别用户日活统计存储结构 方式一:通过 redis的 Set集合进行存储(用户id存储到Set 中,去重)方式二:利用 Hash类型(用户id作为hase的key,value 设置为1,)方式三: 阅读全文
摘要:
依赖倒置原则 /** * 依赖倒置原则(DIP) * TV(打开之前,)就可以控制灯的开关状态 * 高方法,实现前,必须实现低方法, 执行入库前,记录日历 */ public class dipTest { // 定义一个接口:开关 public interface Switchable { voi 阅读全文
摘要:
里氏替换原则 /** * 里氏替换原则(LSP) * 接口多实现, * 新建类,接口当参数入参, */ public class lspTest { //打折活动 public interface Alarm { double addAlarm(double price); } //折扣不同,海康 阅读全文
摘要:
导出功能,动态列设置 public void excel(HttpServletResponse response) { ExcelExportEntity excelentity = new ExcelExportEntity(); List<ExcelExportEntity> entity = 阅读全文
摘要:
说说List,Set,Map三者的区别 List 是一个有序、可重复的集合, Set 集合类似于一个罐子,程序可以依次把多个对象“丢进”Set 集合,而 Set 集合通常不能记住元素的添加顺序。Set 集合中的对象不按特定的方式排序,Set 集合中不能包含重复的对象,Set 集合中不能包含重复的对象 阅读全文
摘要:
JVM: A a = new A() a,放到栈 内存 new A,放到 推内存 各个线程共享的内存区域,数据共享: 堆, 方法区 各个线程不共享的内存区域: 程序计数器,虚拟机栈(栈帧),本地方法栈 程序计数器:执行.class 字节码,指示器,每个线程都有一个程序计数器。 例:执行循环后,程序往 阅读全文
摘要:
基本数据类型:boolean char byte short int long float double 构造器 : 能 重载,不能重写 重载:发生在编译器,同一个类中。方法名相同,参数不同。重写:发生在运行期,子类 extends 父类方法 1,返回值类型,方法名,参数列表相同,抛出异常等于小于父 阅读全文
摘要:
权限组,用户组 改变文件或目录存取权限命令:权限概念、chmod 改变用户组和文件组(2个):chown 创建 mkdir dir 创建目录 torch 123.txt 创建文件 打包 压缩:jar -zcvf IFS0240.tar.gz IFS 解压:jar -zxvf IFS0240.tar. 阅读全文
摘要:
多线程概念 一个Java程序实际上是一个JVM进程,JVM进程用一个主线程来执行main()方法,在main()方法内部,我们又可以启动多个线程。此外,JVM还有负责垃圾回收的其他工作线程等。 并发和并行 并发:单核心CPU运行多线程就是并发,并发在微观来说是CPU在同一时刻只能有一个任务在执行 并 阅读全文