
理论
文章平均质量分 75
逆水行舟者
思考是快乐的源泉
人生如逆水行舟不进则退
生于忧患死于安乐
展开
-
java泛型
泛型,泛型边界原创 2022-12-26 13:33:27 · 140 阅读 · 0 评论 -
23种设计模式
原文:https://www.cnblogs.com/cainiao-chuanqi/p/10957708.html1、根据目的分类:创建模式:描述“怎样创建对象”,分离对象的创建与使用。如spring的IOC。共5种:单例、原型、工厂方法、抽象工厂、建造者结构模式:描述如何将类或对象按某种布局组成更大的结构。共7种:代理、适配器、桥接、装饰、外观、享元、组合行...转载 2020-01-09 17:01:06 · 115 阅读 · 0 评论 -
索引_二叉树_平衡二叉树_B-Tree_B+Tree
转自 https://blog.youkuaiyun.com/qq_36098284/article/details/80178336 稍微改动了下二分查找(Binary Search/折半查找):要求线性顺序存储 平衡二叉树(Self-balancing binary search tree,又称AVLTree):性能逼近二分查找,但是插入删除节点不需要移动大段的数据。 实现方法:红黑树、...转载 2018-09-07 14:29:21 · 189 阅读 · 0 评论 -
java_paltform_version_class_version
1. 引出问题:rocketmqConsole在jdk7下打war包,运行依然后报: java.lang.NoSuchMethodError: java.util.concurrent.ConcurrentHashMap.keySet()Ljava/util/concurrent/ConcurrentHashMap$KeySetView; at com.alibaba.rocke...原创 2018-09-10 14:44:55 · 231 阅读 · 0 评论 -
断点续传
背景:大文件下载一般需要断点续传。 公司的fastdsf服务器日志显示,一个下载请求会触发多次下载。 打印header,发现多了一个属性 Content-Range=bytes 10000-19999/20000服务端代码inputStream=new FileInputStream("文件路径"); long pos = 0; if (null != reques...原创 2018-09-09 21:24:32 · 2161 阅读 · 0 评论 -
JVM实践
jvm参数文档: Java Performance https://docs.oracle.com/javase/7/ https://docs.oracle.com/javase/8/ 英文很吃力,中文的很多抄袭(“促使内存”错别字也不改),而且规范和实践难免脱节. 太祖有训曰: 实事求是,不要教条主义; 太宗亦曰: 实践是检验真理的唯一标准1、常用jvm命令(命令本身自带帮...原创 2018-04-21 18:11:11 · 376 阅读 · 0 评论 -
ajax跨域 & 同源策略
同源策略同源:URL三元组(协议,域名,端口)完全一致同源策略(禁止js/ajax跨域):浏览器禁止源A页面上的javascript,读写其他源的数据。比如: 源A页面的ajax请求http://openapi.tencentyun.com/v3/user/get_infochrome console提示:Failed to load http://openapi.tencentyun.co原创 2017-12-24 18:41:09 · 593 阅读 · 0 评论 -
maven--pom.xml详解
参考http://maven.apache.org/pom.htmlIntroductionPOM : Project Object Modeltop elements<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:sc原创 2017-12-23 09:40:37 · 511 阅读 · 0 评论 -
阿里开发规范--笔记(二)
(二) 日志规约【强制】应用中不可直接使用日志系统(Log4j、Logback)中的 API,而应依赖使用日志框架 SLF4J 中的 API,使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。import org.slf4j.Logger;import org.slf4j.LoggerFactory;private static final Logger logger = Lo原创 2017-12-05 20:53:11 · 1397 阅读 · 0 评论 -
阿里开发规范--笔记(一)
一、编程规约(一) 命名规约POJO,设计只有POJO才需要序列化? 8. 【强制】POJO 类中的任何布尔类型的变量,都不要加 is,否则部分框架解析会引起序列化错 误。 反例:定义为基本数据类型 boolean isSuccess;的属性,它的方法也是 isSuccess(),RPC 框架在反向解析的时候,“以为”对应的属性名称是 success,导致属性获取不到,进而抛出 异常。10原创 2017-12-05 20:30:22 · 699 阅读 · 0 评论 -
字符编码--笔记
一、原码、反码、补码补码: CPU的减法,通过加法器和补码实现溢出(循环):256-1 与 -1 二进制一样。负数补码计算方法:数值位(符号位外的后7位),取反+1 //不”+1”的话,减法不能成功地变为加法-128 1000,0000 //-128是人为规定的,从-127而来,也是”+1”的原因之一-127 1000,0001原创 2017-12-10 16:37:01 · 624 阅读 · 0 评论 -
Effctive_Java--笔记&心得
equals && hashCode重写equals方法,只适合值类(枚举类除外)重新equals方法(普遍的等价关系),需遵循的约定: 自反性:x.equals(x)==true对称性: x.equals(y)==true 必然 y.equals(x)==true传递性: x.equals(y)==true, y.equals(z)==true 必然 x.equals(z)==true原创 2017-12-09 01:29:45 · 574 阅读 · 0 评论 -
SSL/TLS
SSL/TLSSSL(Secure Sockets Layer 安全套接层),网景公司出品(SSL,JavaScript)TLS(Transport Layer Security 传输层安全协议),IETF对SSL的标准化 加密:用非对称秘钥交换对称秘钥完整性:摘要 数字签名:用自己的私钥加密,对方用公钥解密,//不可抵赖身份认证:用对方的公钥,解密其他原创 2017-12-10 00:05:06 · 453 阅读 · 0 评论 -
计算机硬件--笔记
电迁移。主频,也叫时钟频率,单位MHz,表示CPU内,数字脉冲信号震荡的速度。CPU的主频=外频×倍频系数。外频,CPU的基准频率,单位MHz。决定着整块主板的运行速度,两者是同步运行的。超频,都是超CPU的外频,会产生异步运行,(台式机很多主板都支持异步运行)这样会造成整个服务器系统的不稳定。 倍频系数,是指CPU主频与外频之间的相对比例关系FSB( Front Side Bus前端总线原创 2017-12-10 16:09:11 · 852 阅读 · 0 评论 -
编译原理--笔记
一、概念编译器:也是一个程序,把源程序转变为等价的另一种源程序(比如汇编==机器语言)词法分析变量,函数都是标识符。符号表-标识符相关的各种属性,贯穿编译的各个过程,每个过程都可能添加修改表数据: 若是变量名,名称,类型,kind种属(简单,复杂),值,存储位置,作用域若是过程名,名称,类型,参数,返回值类型。语法分析 建立语法树存储分配,先根中根后根二、编译基础:形式语言与自动原创 2017-12-10 15:49:03 · 553 阅读 · 0 评论 -
深入理解计算机系统--笔记
一、计算机体系结构冯·诺依曼体系结构(储存程序型电脑) 采用存储程序方式,指令和数据不加区别混合存储在同一个存储器中。不可编程的计算机器(计算器,学习机,非智能手机),不提供API,仅内含固定用途的程序,只能读数据存储器是按地址访问的线性编址的一维结构,每个单元的位数是固定的。指令由操作码和地址组成。操作码指明本指令的操作类型,地址码指明操作数和地址。操作数本身无数据类型的标志,它的数据类原创 2017-12-10 15:33:27 · 973 阅读 · 0 评论 -
Refactoring_Improving_the_design_of_existing_code--笔记
chapter-1例子1: 方法a(){根据不同类型电影,租期长短,计算价格,并输出}可能变化:增加/改变输出样式,电影类型分类可能会变,计费标准会变。 只有优秀的人才能写出人易读的代码。机器永远会理解。 方法/变量名称,是代码清晰的关键。方法应该放在,它使用的数据所属对象内,这样依赖低例子2:一个电影可以在生命周期内修改分类,一个对象却不能修复所属类。不能创建原创 2017-12-09 23:45:20 · 588 阅读 · 0 评论 -
think_in_java--笔记
1、对象导论计算机是头脑延伸的工具抽象:所有编程语言、数学都是抽象。所能解决的问题复杂性,直接取决于抽象的类型和质量。对象:具有状态(内部数据),方法(在自身上执行操作),标识(内存唯一地址)对象:每个对象都是服务提供者。对象:通过引用操作对象。引用的对象。java只有这一种操作方式。直接常量:200L;10f;0x2f;有时候需要告诉编辑器常量类型垃圾回收:只与内存有关。GC负责释放原创 2017-12-10 10:57:27 · 435 阅读 · 0 评论 -
java系统属性
Properties列出所有的系统属性Properties pps = System.getProperties();pps.list(System.out);获取单个属性 : System.getProperties(“user.dir”)启动java时,设置系统属性: -Dnid=1 (idea中为vm options)Program arg (程序参数): 是main(String原创 2017-12-10 00:16:13 · 561 阅读 · 0 评论