6 猪杂汤饭

尚未进行身份认证

我要认证

以为“听到就是知道,知道就是掌握”,从而造成一种短时间内智力快速上升、知识量爆棚的幻觉。

等级
TA的排名 2w+

基于@Aspect的Spring AOP实现竟然没有运行:Spring“最直觉”的调试思路

本文通过一个问题“基于@Aspect的Spring AOP实现竟然没有运行”的调试全过程,给出了Spring最基础最“直觉”最“特别”的调试思路:考虑对象是否被框架加载/实例化了?比较了解Spring AOP的同学可以直接看第二部分“2. 调试思路总结”。阅读本文大概需要10min。

2019-04-28 21:31:10

网络连接情况的调试思路:从实践中理解ICMP协议

网络连接问题在后台开发中最常见的问题之一。本文总结了定位网络连接问题的思路及常用工具 ping和traceroute(traceroute是Linux命令,在windows中是tracert),并从ICMP网络协议的角度来解释 ping和traceroute的实现原理。假如学有余力的读者,还可以看看扩展部分,一起来转一下牛角尖:“机器通不通”这个描述到底准不准确?

2019-04-20 18:32:04

NXSDOMAIN(域名无法访问)的问题排查思路:深入理解"在浏览器输入网址到显示页面全过程"(一)

问题描述通过域名访问放在腾讯云服务器上的SpringBoot应用出现异常:腾讯云上的部署情况:腾讯云服务器上同时部署了多个应用(网站),通过nginx监听80端口,将域名的请求转发到相应的端口,再由端口对应的程序处理网络请求。问题解决思路首先看到是DNS没有找到这个域名对应的IP address.Tomcat出错找日志www.iasokg.com访问出错的全过程先找域名是否能够正...

2019-02-25 19:08:51

英文抗生素药物医学知识图谱IASO1.0版发布 线上试用正式启动

近日,由北京大学互联网信息工程研发中心(CIRE)开发的中文医学知识图谱英文抗生素药物医学知识图谱IASO1.0发布,面向公众正式开放试用。IASO是利用自然语言处理与文本挖掘技术,基于大规模医学文本数据,以人机结合的方式研发的英文药物医学知识图谱。IASO知识图谱基于DO,IDO,NCBI,HPO和DrugBank等数据库,以及在线百科,权威医学文献等高质量医学数据资源构建而成的。 涵盖507...

2019-02-18 17:52:59

23种常见设计模式总结(类图,优缺点,不同设计模式之间的对比)

设计模式的几个重要原则单一职责原则开闭原则依赖倒转原则里氏代换原则合成聚合复用原则:尽量使用组合/聚合代替继承迪米特原则:降低耦合性设计模式 类图 优点 缺点...

2018-12-29 09:30:12

从数据结构(树)深入理解数据库的索引

树二叉树性质: 1. 在非空二叉树中,第iii层的结点总数不超过2i−12i−12^{i-1}, i>=1i>=1i>=1; 2. 深度为hhh的二叉树最多有2h−12h−12^{h}-1个结点(h>=1),最少有h个结点; 3. 对于任意一棵二叉树,如果其叶结点数为N0,而度数为2的结点总数为N2,则N0=N2+1;

2018-09-17 12:13:46

实践出真知:理解Spring Bean生命周期

实例生命周期Spring Aware接口Spring PostProcessor一些建议实例public class MyBean implements BeanNameAware, BeanFactoryAware, ApplicationContextAware, BeanClassLoaderAware, InitializingBean...

2018-09-08 21:16:31

深入浅出解析HashMap源码

转载自:https://huanglei.rocks/coding/194.html (该个人博客十分geek) 基于 OpenJDK1.81 综述1.1 内部类和字段1.1.1 Node1.1.2 TreeNode1.1.3 table:Node[]1.1.4 modCount:int1.2 底层数据结构2 插入2.1 流程综述2.2 hash()...

2018-09-05 21:40:25

傻傻分不清:Spring IoC注入,自动装配与循环依赖

什么是IoCIoC注入方式优缺点比较循环依赖解决办法1.改用setter注入方式(推荐)2. @Lazy注解3. 使用ApplicationContextAware, InitializingBean什么是IoC在创建新的Bean时,IoC容器会自动注入新Bean的所依赖的其他Bean,而无须自己手动创建。 IoC注入方式构造器注入 ...

2018-09-04 19:47:42

SpringBoot 2.0 学习计划

SpringBoot 2.0 学习计划学习计划相关链接: https://github.com/YuanKQ/SpringBootTutorial , 学习计划的每一步都有对应的commit. 在查找配置文件相关文档时,务必要保证SpringBoot的版本号要匹配, // 重要版本信息Spring Boot 2.0.3fastJson 1.2.17redis 4.0 ...

2018-07-01 20:34:29

Java线程池实现原理与源码解析(jdk1.8)

为什么需要线程池? 线程池能够对线程进行统一分配,调优和监控: - 降低资源消耗(线程无限制地创建,然后使用完毕后销毁) - 提高响应速度(无须创建线程) - 提高线程的可管理性Java是如何实现和管理线程池的? 从JDK 5开始,把工作单元与执行机制分离开来,工作单元包括Runnable和Callable,而执行机制有Executor框架提供。 newScheduled...

2018-04-03 10:09:49

JVM方法调用与方法区

0. 方法区0.1 内容加载的时间节点0.1.1 类信息0.1.2 静态变量0.1.3 常量0.1.4 代码0.1.5 虚方法表0.2 方法区会发生OOM吗?1. 解析调用2. 分派调用2.1 静态分派2.2 动态分派2.3 单分派与多分派Reference0. 方法区0.1 内容加载的时间节点0.1.1 类信息=...

2018-03-30 22:23:19

ConcurrentHashMap源码解析(jdk1.8)

ConcurrentHashMap 基于JDK1.8ConcurrentHashMap1. 原理解析1.1. 重要成员变量1.2. 实例初始化1.3. put操作1.3.1 put过程描述1.3.2 hash算法1.3.3 定位索引1.3.4 获取table对应的索引元素f1.4. table 扩容1.4.1 addCount1.4.2 treeify...

2018-03-27 16:30:07

ThreadLocal知识点解析

1. 作用(具体作用)为每个线程都维护一个* 线程局部变量* ;(目的)每个线程都可以修改自己内部的变量本,而不影响其他线程的变量。(重要区分:optional)属于线程安全范畴,但是不是为了解决线程同步问题:多个线程对同一个资源的并发访问。2. 每个线程的局部变量是存储在哪里的? 类似问题: ThreadLocal是如何每个线程维护局部变量的?==每...

2018-03-03 19:05:58

Thread.join()的真正含义

首先, Thread.join() 并没有将线程合并起来~ 任何疑惑都先从Java Doc开始, stackoverflow上有个极好的例子: 1. After the main thread creates and starts the t1 and t2 threads. There are 3 threads running in parallel: main, t1, t2

2017-12-29 18:53:13

ReentrantReadWriteLock 读写锁获取与释放源码解析

ReentrantReadWriteLock 读写锁构造函数与ReentrantLock相类似, 其自定义同步器Sync分为公平锁FairSync与非公平锁NonfairSync的两种.默认为NonfairSyncpublic ReentrantReadWriteLock() { this(false); }public ReentrantReadWriteLock(bool

2017-12-27 11:53:05

ReentrantLock加锁与解锁源码解析

ReentrantLock公平锁与非公平锁的lock()和unlock()过程解析.ReentrantLock.lock() public void lock() { this.sync.lock(); }sync.lock()取决于ReentrantLock获取锁的机制: 公平性FairSync or 非公平性UnfairSync(Default)非公平性(实现重进入的过程

2017-12-26 19:55:33

首次将本地代码上传至github

这个问题我遇到好几次了, 每次解决的方式都不一样, 有时解决地十分丑陋, 所有今天必须给自己规范化一下解决流程.前提github账号 本地也已经安装了git场景本地尚且没有代码本地已经有代码了, github上也没有代码, 尚未将代码上传至github本地已有代码, github上也有代码, 两者没有冲突, 需要将本地代码上传至github上本地已有代码, github上也有代码, 两者也

2017-09-17 17:19:08

Python中使用多个分隔符分隔字符串re.split

正则表达式基础,看这篇就够了摘要split多个分隔符 单一分隔符,使用str.split()即可 多个分隔符,复杂的分隔情况,使用re.split单一分隔符,str.split()与 re.split()效果是一样的 多个单一 分隔符 时 ,”[]”与 “|”的 效果是一样的,但是 请注意 使用 “|”时某些字符 需要转义 多个 长短 不一 的的分隔符的分隔符时, 就应

2017-08-19 11:57:02

Get pixel width of d3.js SVG element created with width as percentage

问题描述借助d3.js画了一个力引导图(Force-Directed Graph) 官方示例 但是官方示例中将SVG元素的width和height都是设定为像素, 也就是是该SVG不能自适应了.那么为了使SVG能够自适应, 自然而然将svg元素的width和height设置为百分比.<svg width="100%" height="100%"></svg>依然是官方示例, 力引导图却没有出现在网

2017-07-07 20:10:46

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。