`
文章列表
1.虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。 2.类的加载、连接、初始化都是在程序运行期间完成的。 3.类的生命周期包括:加载-->连接(验证,准备,解析)-->初始化--->使用---->卸载 4.加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的,类的加载过程必须按照这种顺序按部就班的开始,但是解析阶段不一定,它在某些情况下可以在初始化阶段之后再开始。这是为了支持Java语言的运行时绑定。 5.对于类加载,JVM没有明确约束触发时间,但是对于 ...
前言:      之前在写消息系统的时候,借鉴了一些TCP在流量控制的经验,发现还挺有用的。所以这张总结一点关于TCP在容灾、控制上的算法。主要包括超时重传,动态窗口,顺序保障。   ================流量窗口================== ...
Tcp服务 1.Tcp是面向连接的,交换数据之前必须建立连接。 2.与UDP不同,应用程序产生的数据报长度将保持不变。 3.TCP发出一段后,后启动一个定时器,等待目的端确认收到这个报文段。如果没收到确认,将重发。 4.如果必要 ...
ARP部分 ARP的功能 1.A R P为I P地址到对应的硬件地址之间提供动态映射。 2.A R P发送一份称作A R P请求的以太网数据帧给以太网上的每个主机。这个过程称作广播。A R P请求数据帧中包含目的主机的I P地址(主机名为b s d i),其 ...
me:从这张开始就有意思啦! 1.IP协议的特点(我的笔记):    不可靠:不保证IP数据报能成功送达。如果发送失败,IP层会丢弃该数据报,然后发送ICMP消息报给信源端。任何可靠性需要由上层来提供。(TCP)    无连接:数据 ...
链路层主要有三个目的: (1)为I P模块发送和接收I P数据报; ( 2)为A R P模块发送A R P请求和接收A R P应答;  (3)为R A R P发送R A R P请求和接收R A R P应答   1.环回接口      TCP-IP详解卷1 写道 大多数的产品都支持环回 ...
1.分层: Tcp-IP协议卷1 写道 1) 链路层,有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。2) 网络层,有时 ...

JDBC,Spring事务集成

 
写了很多年代码,发现对Spring事务集成掌握还是很弱的。 着重过了下这方面的知识,以下是总结, 不过之前说个题外话:   题外话 写道 今天在本机JDBC测试的时候,发现在update的preparestatement.close()时出现错误Could not execute JDBC batch update Unknown system variable 'tx_read_only'查了下资料说是JDBC版本问题于是修改MAVEN依赖的版本 mysql-connector-java的版本从5.1.30改成5.1.6,部署后解决问题   TO BE CONTINUED ...
提要: 1..在某此编译后,日志莫名其妙的乱了。本来应该打印到locationservice.log下的,但是打印到了jboss_stdout.log下 2. slf4j,log4j,logback之间的关系式什么?   ============== 解答==================================================   1.因为代码没有变过,怀疑是系统在在使用日志系统的时候出现问题,打印mvn tree,发现同时依赖了log4j、logback,那系统使用的日志系统到底是哪一个呢?   2.查看log相关代码,原来slf4j只是日志系统 ...
==============对象是否生存======================     引用计数法:      给对象添加一个引用计数器,每当有一个地方引用它的地方,计数器值+1;当引用失效,计数器值就减1;任何时候计数器为0,对象就不可能再被引用了。      引用计数法的缺陷(相互引用)p63        ReferenceCountingGc A=new ReferenceCountingGc (); ReferenceCountingGc B=new ReferenceCountingGc (); A.instance=B; B.instance=A; A= ...
第2章 Java内存区域与内存溢出异常   ===============运行时数据区================================================= 1.运行时数据区包含:方法区、虚拟机栈、本地方法栈、堆、程序计数器。 2.程序计数器是一块较小的内存空间,它可以看做是当前线程执行的字节码的行号指示器。在任何一个确定的时刻,一个处理器(对于多核处理器来说是一个内核)都只会执行一条线程中的指令。它是“线程私有”内存。如果线程正在执行JAVA方法,计数器记录正在执行的虚拟机字节码指令的地址;如果是NATIVE方法,则为空。 3.JAVA虚拟机栈也是线程 ...
提要: 1.都知道ThreadLocal都是线程局部变量,可以比作是个Thread->T的MAP,那么有个问题了,如果一个类维护了一个TL的局部变量,随着不同的线程访问,这个TL会变得很大么?我们需要在线程结束前调用TL.remove来删除TL变量么 ...
提要: 1.JDBC连接数据库前常见到Class.forName("com.mysql.jdbc.Driver"),为什么要这么一句话?可不可以不要。 2.ibatis使用SqlMapClient时如果要显示使用数据库连接,sqlMap.getCurrentConnection()和sqlMap.getDatasource().getConnection()的区别是什么? 3.通过sqlMap.getDatasource().getConnection()拿到的连接需要close()么,那么sqlMap.getCurrentConnection() 的需要自己clo ...
1.在使用弹出层这样的功能时,需要引入bootstrap.js 2.注意bootstrap.js和bootstrap-min.js不要重复引用,后者是前者的压缩 3.bootstrap.js依赖jquery.js,所以要保证jquery.js的引入在bootstrap.js的前面,不然会出现 Bootstrap: 'TypeError undefined is not a function的错误
网上有很多大神对数据库索引做了详细的教程,这里只是记录一些细节和自己的理解。   1.索引的构成    innodb使用b+ tree做索引结构,MyIsam使用B-tree做索引结构。    MyIsam的索引和data文件是分离的,即通过索引文件查到数 ...
Global site tag (gtag.js) - Google Analytics