自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 知识总览

面试 http://blog.csdn.net/qq_25931839/article/details/79495564 Java 多线程 http://blog.csdn.net/qq_25931839/article/details/79213836 IO http://blog.csdn.net/qq_25931839/article/details/79136706 集合框...

2018-02-28 15:48:45 261

原创 Spring源码之component-scan

类继承InitializingBean并在类上标注@Component时bean被实例化两次 前提 spring启动时有两个容器一个是spring容器,一个是我们在xml写的DispatchServlet的Servlet容器。 写项目的时候把配置文件分为 spring-beans.xml, springmvc-bean.xml。 这么 写是为了区分spring管理的bean跟springm...

2018-11-20 20:37:19 203

原创 jvm crash

https://blog.csdn.net/achilles12345/article/details/50887402 https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8014189

2018-07-26 18:37:23 277

原创 JAVA编码规范一些不是很多的点

格式 //建议下面这样写 boolean isComeFromChina = obj != null && (obj.get… == … || …) && (… || … & …); if(isComeFromChina ) {…} 方法参数在定义和传入时,多个参数逗号后边必须加空格 method(“a”, “b”, “c”); 在if/else...

2018-06-29 18:07:36 184

原创 DFS总结

网易魔法币逆推DFS给出方案,涉及最后为某个结果 运行时间34 ms 占用内存10588K 魔法机器1:如果投入x个魔法币,魔法机器会将其变为2x+1个魔法币 魔法机器2:如果投入x个魔法币,魔法机器会将其变为2x+2个魔法币 要到n给出一种方式 public static void dfs(int start,int n,List<String> list,Strin...

2018-03-25 22:09:48 214

原创 leetCode

算法思想 二分查找 编写代码的时候需要注意mid的写法,mid = h-(h-l)/2; 还有如果写的循环条件是l

2018-03-15 10:52:58 181

原创 TCP/IP

已停更,转至有道笔记 滑动窗口 TCP差错控制,流量控制,拥塞控制(控制传输速率,有慢开始与拥塞避免就是刚开始比较慢,慢慢加速 快重传与快恢复收到三个连续的窗口确认则立马重传) TCP可靠性传输是通过(超时重传,数据校验,差错控制,流量控制)   差错控制: 现假设发送窗口数量为2,接收窗口为1 (后退n协议) 1) 发送方发送 2...

2018-03-11 18:17:43 172

原创 面试

Object类有哪些方法 wait(),notify(),notifyAll() 在调用wait和notify的时候,该线程必须要已经持有该锁,然后才可调用。wait()方法用于将线程进入等待队列是可被中断的,利用interrupt()方法(中断io的话是关闭其底层资源的调度,ReentrantLock上阻塞的任务可以被中断),notify()方法用于将等待队列的线程进入锁池,noti...

2018-03-09 11:55:08 308

原创 模板号对应枚举类

public enum SMSTemplateTypeEnum { RESET_PASSWORD("15759",new String[]{"code","username"}), VERIFICATION("16021",new String[]{"verificationCode"}); private String id; private String[]...

2018-03-02 15:51:39 1224

原创 Mybatis原理学习

已转移 mybatis初始化做了什么 configuration 配置 properties 属性 settings 设置 typeAliases 类型别名 typeHandlers 类型处理器 objectFactory 对象工厂 plugins 插件 environments 环境 environment 环境变量 transactionManager 事务管理器 dataSource...

2018-02-06 21:20:59 194

原创 多线程

线程安全 volatile Java原子性操作实现原理 Java内存模型 ThreadLocal的设计理念与作用 什么是线程池(thread pool) concurrenthashmap 线程安全实现方案 锁优化方案 类锁,对象锁 实现多线程的3种方法 foreach与正常for循环效率对比 线程安全 线程安全指的是多线程环境下访问某个类,能够表现正确的行为。 volatile...

2018-01-31 10:17:32 216

原创 IO NIO

IO分类 IO/NIO基本知识汇总 select epoll BIO,NIO,reactor主从模型 IO分类 BIO 同步阻塞IO,服务器实现模式为一个连接一个线程。试用于连接数少,带宽要求高时.同步是一种消息通信机制,阻塞非阻塞是一种程序在等待调用结果的一种状态。 NIO 同步非阻塞,一个线程对应多个连接,一个请求对应一个线程。当连接数多而且短时,比如聊天室,可以用这个。 ...

2018-01-23 10:30:02 192

原创 集合框架

list, map,set 接口:Collection list, map,set java.util包下面的所有的集合类都是快速失败fail-fast迭代器的,而java.util.concurrent包下面的所有的类都是安全失败fail-safe迭代器的。快速失败的迭代器会抛出ConcurrentModificationException异常,而安全失败的迭代器永远不会抛出这样的异...

2018-01-14 17:40:42 209

原创 设计模式

已转移 创建型 工厂模式 public class Replace { public static void main(String[] args){ CardFactory card=new CardFactory(); card.buyCard("mobilecard").BuyCard(); } } interface Card{...

2018-01-12 21:39:25 244

原创 Kafka

已转移 1. Kafka组件 1) kafka topic是为了对消息进行分类 每条消息都被append到partition中,是顺序写磁盘,因此效率非常高(经验证,顺序写磁盘效率比随机写内存还要高,这是Kafka高吞吐率的一个很重要的保证)。 2) 如果partition规则设置的合理,所有消息可以均匀分布到不同的partition里 分区保...

2018-01-12 20:33:15 187

原创 计算机网络

已停更,转至有道云 计算机网络 计算机网络体系结构 应用层:为特定应用程序提供数据传输服务,例如 HTTP、DNS 等。数据单位为报文。 运输层:提供的是进程间的通用数据传输服务。由于应用层协议很多,定义通用的运输层协议就可以支持不断增多的应用层协议。运输层包括两种协议:传输控制协议 TCP,提供面向连接、可靠的数据传输服务,数据单位为报文段;用户数据报协议 UDP,提供无连接、尽最...

2018-01-12 13:30:44 196

原创 JVM

jvm内存模型 GC 类加载机制 内存溢出和内存泄漏 调优?? jvm内存模型 程序计数器 当前线程所执行字节码指示器 如果执行一个方法则计数器指向字节码指令地址 如果指向一个native方法则指向null。 不抛异常 java虚拟机栈 存放局部变量,方法执行时放栈帧,当进入一个方法时需要在栈帧存放多大内存空间是知道的。 java虚拟机规范中会抛出两个异常StackOve...

2018-01-12 13:23:19 195

原创 Redis设计与实现

已转移 Redis缓存设计 设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效.  1) 缓存击穿:对于一些设置了过期时间的key, 刚好过期的时候,这时候有个高并发的请求,会导致直接访问数据库,危险. 2) 缓存穿透:查询一个一定不存在的数据,导致直接访问数据库。 解决方法:如果一个查询返回的数据为空,我们仍然把这个空结果进行缓存,但它...

2018-01-12 10:27:58 3097 1

原创 数据库相关知识以及经验总结

已停更,转移至有道云笔记 Mysql 优化之explain你的select ,show profile, 慢查询  explain select * from answer where question_id in(4007,4008,4009) and score>0; 其中questionId有索引而 score没有    1) select_type表示的...

2018-01-11 21:28:05 380

原创 操作系统

已转移 1. 进程跟线程的区别 1) 进程是系统调度资源的最小单位,进程独占系统资源,而线程缺占用很少的资源。 2) 进程由于资源比较多所以切换速度慢,线程资源少所以切换速度快。 3) 由于线程共享进程资源所以线程通信方便,进程的IPC复杂一些。 2. 进程线程的通信 1) 进程 信号,信号量,消息队列,管道,共享内存 23为异步通信 ...

2017-11-30 11:54:09 276

转载 Thrift学习

已转移 使用经验 client端 import org.apache.thrift.TException; import org.apache.thrift.protocol.TBinaryProtocol; import org.apache.thrift.protocol.TProtocol; import org.apache.thrift.transport.TSocket; imp...

2017-11-30 10:20:51 786

原创 Mybaits经验学习

已转移 动态sql元素解析   <where > <!--where标签相当于<trim prefix="WHERE" prefixOverrides="AND |OR ">--> <foreach collection="oredCriteria" item="criteria" separator=&

2017-11-30 10:17:47 255

原创 Spring学习之(四)依赖注入的几种装配方式

基于XML的装配方式 验证方式: 1) 默认构造 用于生成实例化对象,必须未重写bean的实例化方法。 配置文件: 2) 静态工厂方法,常用于Spring整合其它框架, 一个UserService类一个静态工厂类用于生产UserService类,此静态工厂所有方法必须为Static。 配置文件: 3)实例工厂 提供的所有方法都是非静态的,实例化之前必须先有工厂的实例化对

2017-11-29 22:07:37 420

原创 Spring学习(三)之依赖注入实现

涉及源码解析。 一. 简单依赖注入测试代码: 二. 对BeanFactory bf=newXmlBeanFactory(new ClassPathResource(“…”))分析。    BeanFactory bf=new XmlBeanFactory(newClassPathResource(“…”));有些过时了。最顶上为核心类XmlBeanFactory继承自 De

2017-11-29 21:45:26 178

原创 Java基础之数据类型(二)String,StringBulider,StringBuffer区别以及常用API

1.可变与不可变      String源码是final修饰的,所以是存储在不可变区域,即存在字符串常量区 String s=new String();或者静态区String s="faffds",StringBulider与StringBuffer都是可变的,一般涉及到字符串操作的时候用后者。      2.是否多线程安全     String中的对象是不可变的,也就可以理解为常量,显然线

2017-11-29 12:52:29 246

原创 Java基础之数据类型(一)与传值传引用分析

java数据类型大方向有三种,基本类型,引用类型,枚举类型。     1. 基本类型     1) 整数型          byte,short,int,long     2) 小数          float,double     3) char     4) boolean     2.枚举类型         enum     3.引用类型     1) Strin

2017-11-28 20:23:26 180

原创 剑指offer之java篇之全排列(三)

题:全排列 比如 abc  全排列为 abc acd bac bca cab cba 总共3! n个字母则有n!种。     分析:可以用字典序来完成全排列。一次排列过程为:                1) 按照以上所述需要以从小到大顺序输出,因为用的基本数据类型,很多函数要自己写,则需要先将abc排列一下就是sort一下。                2) 从后往前找到相邻中倒置的数

2017-11-28 17:05:52 238

原创 剑指offer之java篇之旋转数组(二)

题:旋转数组求最小值。1 2 3 4 5 6 旋转变为  3 4 5 6 1 2     分析:这种基本有序比较容易想到二分法。分为以下几种情况:                1) array[mid]>array[right]说明一定在右边,而且这个mid一定不是最小的。                2) array[mid]                3) 不用考虑了,全部相等

2017-11-28 16:45:12 121

原创 剑指offer之java篇之空格替换(一)

之前学c++的,现在学习java,重现用java写一遍剑指offer。     题:空格替换  We are happy变成 We%20are%20happy。     分析:刷剑值offer的目的并不只是会做某道题,需要考虑多种解题思路,毕竟题在精不在多。     解题思路一:不改变原有的StringBuffer结构的情况下,替换空格,注意StringBuffer跟StringBulide

2017-11-28 16:32:12 367

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除