自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zhaoxinglin123的专栏

一开始的定位不要那么高,写博客是为了取悦自己!

  • 博客(124)
  • 资源 (8)
  • 收藏
  • 关注

原创 资料收集整理

1、jvm2、java3、spring4、mysql5、redis6、kafka7、hadoop8、算法9、思考

2021-01-19 21:07:29 261 1

原创 MYSQL-GAP&插入意向锁 死锁记录

间隙锁和插入意向锁带来的死锁问题

2022-10-19 16:54:54 609 2

原创 HashMap

1、数据结构 static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16 static final int MAXIMUM_CAPACITY = 1 << 30; static final float DEFAULT_LOAD_FACTOR = 0.75f; static final int TREEIFY_THRESHOLD = 8; static final int UNT

2020-06-23 10:22:44 325

原创 JAVA面试题

一、基础部分1、sleep和wait的区别sleep是Thread中的方法,wait是Object的方法。调用sleep正在执行的线程主动让出CPU(然后CPU就可以去执行其他任务),在sleep指定时间后CPU再回到该线程继续往下执行,此时,不会释放对象锁;wait()方法则是指当前线程让自己暂时退让出同步资源锁,以便其他正在等待该资源的线程得到该资源进而运行,只有调用了notif...

2020-05-07 13:25:47 1053

原创 Dubbo源码学习(四、ExtensionLoader 扩展点加载机制,Protocol$Adaptive,ProxyFactory$Adaptive,Cluster$Adaptive)

坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了环境配置:jdk  1.7.0.17dubbo 2.5.xmyeclipse 2014idea 2017SPI注解的接口在dubbo中,采用了类似于java的spi机制进行扩展类加载在dubbo.jar文件夹下有个META-INF/dubbo/internal文件夹下,定义了很多了扩展点加载类,如下图...

2018-07-18 11:42:06 961

原创 Dubbo源码学习(三、服务暴露ServiceBean)

坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了环境配置:jdk  1.7.0.17dubbo 2.5.xmyeclipse 2014idea 2017ServiceBean  是针对&lt;dubbo:service /&gt;标签解析封装的config对象,由于ServiceBean 实现了InitializingBean的接口,那么spring在加载bea...

2018-07-17 17:48:31 718

原创 Dubbo源码学习(二、配置文件)

坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了环境配置:jdk  1.7.0.17dubbo 2.5.xmyeclipse 2014idea 2017 new ClassPathXmlApplicationContext("provider.xml"); 在spring解析配置文件的时候,遇到dubbo标签 比如&lt;dubbo :registry /...

2018-07-17 17:15:13 282

原创 Dubbo源码学习(一、环境搭建)

坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了环境配置:jdk  1.7.0.17dubbo 2.5.xmyeclipse 2014idea 2017参考博客:https://blog.csdn.net/u012410733/article/category/7159846http://shiyanjun.cn/archives/325.html文档...

2018-07-17 16:54:39 570 1

原创 Maven报错 Check $M2_HOME environment variable and mvn script match. 4种方法解决

1.添加M2_HOME的环境变量2.Preference-&gt;Java-&gt;Installed JREs-&gt;Edit 选择一个jdk,添加  -Dmaven.multiModuleProjectDirectory=$M2_HOME3、重点来了,很多人配完了这些之后,还是不能使用MAVEN 进行clean 。install 等功能,这时候需要检查 你项目使用的jre system li...

2018-06-25 17:45:45 1866 1

原创 centos 常用基础知识

软件版本  Centos7 64bit1、日志文件常见的Linux操作系统登录文件有如下几个:1)/var/log/secure:记录登录系统存取数据的文件;例如pop3,ssh,telnet,ftp等都会记录在此.2)/ar/log/wtmp:记录登录这的信息记录,被编码过,所以必须以last解析;3)/var/log/message:jihu所有

2018-02-07 16:17:25 607

原创 Tomcat 源码阅读(序)

环境:tomcat7.0.78、jdk 1.7.17  myeclipse2014坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了学习Tomcat源代码,首先得需要把tomcat源码下载下来,导入到ide中,一直忽略了这个问题,这里就写一篇文章,记一下如何把tomcat源码导入到ide中1、新建maven项目:创建一个新的m

2018-01-06 16:28:35 383 2

原创 SpringBoot (一)环境搭建

环境 :jdk1.7  myeclipse2014springbootspringboot 官网指南:https://spring.io/guides/gs/spring-boot/1、使用maven构建java project2、修改pom文件:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:x

2017-11-15 15:20:32 402

原创 JVM 常用参数总结

1、-Xms20M 初始堆大小2、-Xmx20M 最大堆大小3、-Xmn10M 新生代大小4、-Xss128K  每个线程堆栈大小 5、-XX:+PrintFlagsInitial 打印所有可设置参数的初始值6、-XX:+PrintFlagsFinal 代言所有可设置参数的当前值7、-verbose:gc  开启打印垃圾回收日志8、-Xloggc:eclipse_gc.

2017-11-14 16:08:03 554

原创 JAVA 内存模型

环境:1.7.0.17坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了本文主要介绍JAVA的内存模型一直一下对JAVA 的内存模型不甚了解,直到看见了下面一张图

2017-11-08 14:04:25 228

原创 Netty(二)ChannelPipeline和ChannelHandler

环境:netty-all-5.0.0.Alpha1.jar坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了本文主要介绍Netty的ChannelPipeline 和ChannelHandler一、ChannelPipelineChannelPipeline 是ChannelHandler的容器,负责ChannelHandler的管理和事

2017-11-07 14:01:12 441

原创 Netty(一) 简单入门

环境:netty-all-5.0.0.Alpha1.jar坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了本文主要介绍Netty的简单入门一、环境搭建创建一个maven project,修改pom.xml文件加载netty的jar 包    io.netty    netty-all

2017-11-07 09:49:48 2552

转载 java 序列化定义的 serialVersionUID 有什么作用

本文转自:http://www.cnblogs.com/duanxz/p/3511695.htmlserialVersionUID适用于Java的序列化机制。简单来说,Java的序列化机制是通过判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID

2017-10-30 16:52:43 502

原创 Tomcat 源码阅读(八)Lifecycle

环境:tomcat7.0.28坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了本文主要介绍Tomcat的生命周期模型 Lifecycle一、Lifecycle介绍1、Lifecycle的状态枚举类LifecycleStatepublic enum LifecycleState { NEW(false, null), INITIALIZING(f

2017-09-30 11:46:31 401

原创 Tomcat 源码阅读(七)Tomcat加载web项目

环境:tomcat7.0.28坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了本文主要介绍Tomcat 是如何加载webapps下的项目一、server.xml在server.xml中有如下关于Host配置的一段代码 <Host name="localhost" appBase="webapps" unpackWARs="tr

2017-09-29 11:13:34 2552

原创 Tomcat 源码阅读(六)Adapter

环境:tomcat7.0.28坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了本文主要介绍Tomcat 的Adapter一、Adapter接口前文讲到,在Connector中,对请求解析完毕之后最终会调用Adapter的service方法。在Tomcat中,Adapter的唯一实现类是CoyoteAdapter。1、CoyoteAdapter.serv

2017-09-27 15:22:44 744

原创 Tomcat 源码阅读(五)解析请求ProtocolHandler

环境:tomcat7.0.28坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了本文主要介绍Tomcat连接器Connector的协议处理ProtocolHandler一、大体框架二、Http11Protocol

2017-09-26 17:45:59 5633

原创 Tomcat 源码阅读(四)Connector

环境:tomcat7.0.28坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了本文主要介绍Tomcat的连接器一、Connector的创建。当我们在server.xml中配置了Connector的时候,Digester通过解析xml文件,创建了Connector的对象。在前文中提到的Catalina的createStartDigester方法中,Digeste

2017-09-20 17:17:29 617

原创 Tomcat 源码阅读(三)Catalina.start

环境:tomcat7.0.28坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了本文主要大体介绍Catalina的start方法,一、总体流程二、代码解析

2017-09-15 18:01:54 670

原创 Tomcat 源码阅读(二)Catalina.load

环境:tomcat7.0.28坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了本文主要讲解Catalina的load方法,顺带简单介绍一下Digester组件

2017-09-15 11:27:20 592

原创 Tomcat 源码阅读(一)总概

环境:tomcat7.0.28坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了1、简介自上而下一点一点的分析tomcat 的源码,

2017-09-13 16:47:05 408

原创 java源码学习7-SynchronousQueue

一、SynchronousQueue API介绍public class SynchronousQueueextends AbstractQueueimplements BlockingQueue, Serializable一种阻塞队列,其中每个 put 必须等待一个 take,反之亦然。同步队列没有任何内部容量,甚至连一个队列的容量都没有。不能在同步队列上进行 peek,因为仅在

2017-08-22 12:35:33 267

原创 从JAVA字节码看++i 和i++ 的区别

记录一下,省的面试的时候问到,虽然小儿科。代码如下:public class TestDizeng { public static void main(String[] args) { // TODO Auto-generated method stub int i = 0,j=0,m=0; j=i++; System.out.println(j); m=++i;

2017-06-27 16:29:31 535

原创 Myeclipse 是如何启动tomcat服务

闲的蛋疼的时候,就写了个批处理脚本自动重启关闭tomcat 服务的脚本,内容如下:d:cd work/apache-tomcat-7.0.78/bincall shutdown.batcall startup.bat因为本身tomcat 下边有项目,没想到启动的时候 居然内存溢出了我又看了下myeclipse 中关于tomcat7 的配置 ,发现,里面加了VM 参数调

2017-06-06 15:46:48 7686 2

原创 python批量复制并且重命名文件

用的是python 3.6.0版本,操作系统是windows10# -*- coding: gbk -*-#拷贝文件并且按照规则重命名#命名规则:给定前缀或者后缀  添加编号import osimport timeimport shutilimport sys#sourceDir="C:\\Users\\zxl\\Desktop\\图片"

2017-06-02 18:17:14 3927

原创 python爬取饿了么数据(2)

上一节我们去到了关键字 查询得到的附近商圈地点,这一节我们查询地点附近的所有商家的月销售情况1、网页信息在上一节展现的那个网页随便选取一处地点,就会跳转到上面的页面,我们向下滑动鼠标的时候,网页是动态加载数据的,我们打开这个网页的时候,首先清空所有的页面请求,然后滑动鼠标,可以看到网页会自动去请求数据,分析url可以发现,url请求是:https://m

2017-02-14 15:36:30 9338 2

原创 python爬饿了么外卖数据(1)

1、环境介绍:win10  64bitpython 3.6.0openpyxl  2.4.2(操作excel)2、目的根据区域统计该区域附近的外卖商家总数、和所有商家的月销售情况3、网页截图首先我们通过这张图能发现URL请求是:https://mainsite-restapi.ele.me/v2/pois?extras%5B%5D=count&geohash

2017-02-14 14:54:42 12409 3

原创 mysql5.7.17在windows下安装启动的时候提示不成功

在机器上首次安装mysql,操作系统是win7mysql 的安装文件是 zip 格式的,版本是5.7.17解压之后,安装步骤是1、首先找个文件存放这些安装程序以及 数据假设是E:\\mysql2、把解压的文件放在E:\\mysql下,并且新建个data文件夹3、创建环境变量mysql  路径是E:\\mysql添加到path 中  %MYSQL%\bin;

2017-01-02 01:16:56 3873

原创 1常用批处理脚本

1、查看某个文件的内容for  /f %i  in (fileName) do echo %i

2016-11-19 23:10:15 361

原创 java源码学习7-Collection

1、集合的设计,包括它的扩容问题,看了下

2016-11-07 23:14:11 518

原创 java源码学习6-System

最近看源码,心血来潮想探一下System类的深浅,所以不多说,直接上源码结构public  final class  System {   // final 修饰,不能被继承,只能用,和String 类一样//三个成员变量public final static InputStream in = null;public final static PrintStream out = n

2016-10-25 22:53:58 1325

原创 java源码学习5-ClassLoader

众所周知,JAVA 包含三种 类加载器,分别是 根类加载器 :加载核心类库  lib 目录下的jar和class文件扩展类加载器:加载lib/ext下的jar和class文件应用类加载器;加载应用程序中的classpath指定的jar和class文件编写自定义的类加载器需要继承自 ClassLoader类

2016-10-25 22:28:29 321

原创 java源码学习4-ThreadLocal

1、ThreadLocal 介绍:看jdk 源码说明: * This class provides thread-local variables. These variables differ from * their normal counterparts in that each thread that accesses one (via its * get or set m

2016-09-18 16:42:32 264

原创 java源码学习3-Enum

枚举类型是特殊的class(1)Enum  最常用的用法是作为常量,通常我们在代码里面定义常量的时候 用的是 public  static final,现在有了 枚举类, 可以通过枚举类来定义常量(2)在使用switch 语句进行分支判断,使用枚举类能够使代码具有更好的可读性(3)枚举类可以额外定义自己的方法、覆盖父类Enum的方法,并且支持接口实现代码如下:pub

2016-09-11 23:06:09 243

原创 java源码学习2-Integer

1、Integer的内部静态类IntegerCacheprivate static class IntegerCache { static final int low = -128; static final int high; static final Integer cache[]; static {

2016-09-07 23:16:04 357

原创 java 源码学习1-String

1、计算hashcode方法 public int hashCode() { int h = hash; if (h == 0 && value.length > 0) { char val[] = value; for (int i = 0; i < value.length; i++) {

2016-09-07 22:31:15 327

maven构建的Tomcat源码

Tomcat7.0.78源码版本,使用maven构建,myeclipse2014,jdk1.7

2018-01-08

svn1.6,1.8及安装说明

包含svn 1.6.5 ,1.6.18 1.8.16 及在eclipse与myeclipse的安装说明

2014-10-24

pycron调度软件

pycron 是一种调度任务处理软件,可以作为系统的一种服务,周期性的执行bat、exe等程序,类似于window的计划任务,不过在执行周期上可以精确到分钟,

2014-10-24

flex与actionscript3程序开发、陈爽 源码

flex与actionscript3程序开发,陈爽,付凯编著的书中源码,适合初学者使用

2013-08-30

myeclipse为web项目添加flex并实现与java通信

用myeclipse开发的一个web小项目,采用flex作为前台设计,显示java类中的信息

2013-08-30

blazeds4.0.1

包含blazeds.war blazeds-spring.war 以及解压后的blazeds,blazeds-spring文件夹, 可直接拷贝到javaee项目下的WebRoot文件夹下

2013-08-30

JDK-API帮助文档

JAVA SE的帮助文档,为初学者提供各种函数,类的详细信息

2012-03-29

空空如也

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

TA关注的人

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