摘要: Python python 没有多态,而是鸭子类型 多继承,没有接口,可通过语法糖实现接口的作用 lambda中只能有一句 "/"表示之前的参数是必须是位置参数,”**“表示是后面的必须是关键字参数 Python多进程 Python 多线程是伪多线程 多线程子线程会随着主线程结束而中断,因此一般在主 阅读全文
posted @ 2021-12-25 16:00 下雨天,真好 阅读(52) 评论(0) 推荐(0) 编辑
摘要: TOMCAT项目结构 <?xml version="1.0" encoding="UTF-8" ?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/ja 阅读全文
posted @ 2021-06-26 18:39 下雨天,真好 阅读(69) 评论(0) 推荐(0) 编辑
摘要: 常见生成策略的优缺点对比 方法一: 用数据库的 auto_increment 来生成 优点: 此方法使用数据库原有的功能,所以相对简单 能够保证唯一性 能够保证递增性 id 之间的步长是固定且可自定义的 缺点: 可用性难以保证:数据库常见架构是 一主多从 + 读写分离,生成自增ID是写请求 主库挂了 阅读全文
posted @ 2021-04-21 13:26 下雨天,真好 阅读(282) 评论(0) 推荐(0) 编辑
摘要: bitmap和布隆过滤器 海量整数中是否存在某个值--bitmap ​ 在一个程序中,经常有让我们判断一个集合中是否存在某个数的case;大多数情况下,只需要用map或是list这样简单的数据结构,如果使用的是高级语言,还能乘上快车调用几个封装好的api,加几个if else,两三行代码就可以在控制 阅读全文
posted @ 2021-04-13 19:56 下雨天,真好 阅读(680) 评论(0) 推荐(0) 编辑
摘要: JDK1.8中HashMap实现 JDK1.8中的HashMap实现跟JDK1.7中的实现有很大差别。下面分析JDK1.8中的实现,主要看put和get方法。 构造方法的时候并没有初始化,而是在第一次put的时候初始化 putVal方法的主要逻辑是这样的: 1、如果数组还没有初始化(数组长度是0), 阅读全文
posted @ 2021-03-28 13:38 下雨天,真好 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 应尽量避免在 where 子句中对字段进行 null 值判断,创建表时NULL是默认值,但大多数时候应该使用NOT NULL,或者使用一个特殊的值,如0,-1作为默 认值。 应尽量避免在 whe 阅读全文
posted @ 2021-03-08 10:55 下雨天,真好 阅读(60) 评论(0) 推荐(0) 编辑
摘要: Firewall cmd基本命令 服务启动 端口开关 信任级别 服务管理 IP地址伪装 端口转发 阅读全文
posted @ 2021-03-03 19:52 下雨天,真好 阅读(120) 评论(0) 推荐(0) 编辑
摘要: Nodejs入门 目标: 控制台输出字符串、使用函数、进行模块化编程 快速入门 Hello World 1、创建文件夹 nodejs 2、创建 helloworld.js 类似于java中的 运行: 结果:hello world!!! 3、打开命令行终端:Ctrl + Shift + y 浏览器的内 阅读全文
posted @ 2021-03-03 19:52 下雨天,真好 阅读(66) 评论(0) 推荐(0) 编辑
摘要: ```java interface AService{ void fly(); } class AServiceImpl implements AService{ @Override public void fly(){ System.out.println("fly......"); } } ``` ```java // jdk自带动态代理实现方式 class JDKHandler implem 阅读全文
posted @ 2021-03-03 19:52 下雨天,真好 阅读(36) 评论(0) 推荐(0) 编辑
摘要: ```java import java.io.Serializable; // 修改后的单例模式 // 使用线程同步创建,防止进程切换重复创建线程, // 设置volatile关键字修饰,使读取singleton对象时能够获取最新状态 // 修改构造方法,防止反射创建对象 // 修改readResolve方法,防止反序列化对象时重新创建对象 // 重写克隆方法,防止对象克隆 public clas 阅读全文
posted @ 2021-03-03 19:52 下雨天,真好 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 1,线程基础 1,继承Thread方式的线程 当需要再此启动一个线程时,需要再创建对象,不能重复使用。 2,推荐的创建线程方式:继承Runnalbe,使用Thread类 1.5之前就这两种 callable 第三种 可以有返回值 call() 可以抛出异常 支持泛型返回值 需要借助FutureTas 阅读全文
posted @ 2021-03-03 19:52 下雨天,真好 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 关键词 :乱码,编译,集合,正则 阅读全文
posted @ 2021-03-03 19:52 下雨天,真好 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 行级锁 共享锁S(读锁):其他事务可以继续加锁,但是不能加排它锁 排它锁X(写锁):其他事务不能继续加锁 共享锁共享锁兼容,其他冲突 表级锁 意向锁 意向共享锁:想要获取表中的几行的共享锁 意向排它锁:想要获取表中的几行的排它锁 自增长锁 提升并发插入性能 Sql执行完就释放 记录锁 索引加锁 间隙 阅读全文
posted @ 2021-03-03 19:52 下雨天,真好 阅读(54) 评论(0) 推荐(0) 编辑
摘要: 1、什么是函数式接口 1.1 java8自带的常用函数式接口。 1.2 惰性求值与及早求值 2、常用的流 2.1 collect(Collectors.toList()) 2.2 filter 2.3 map 2.4 flatMap 2.5 max和min 2.6 count 2.7 reduce 阅读全文
posted @ 2021-03-03 19:52 下雨天,真好 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 1. 为什么使用消息队列?消息队列的优点和缺点?kafka、activemq、rabbitmq、rocketmq都有什么优缺点? 面试官角度分析: (1)你知不知道你们系统里为什么要用消息队列这个东西? (2)既然用了消息队列这个东西,你知不知道用了有什么好处? (3)既然你用了MQ,那么当时为什么 阅读全文
posted @ 2021-03-03 19:52 下雨天,真好 阅读(114) 评论(0) 推荐(0) 编辑