07 2014 档案
摘要:一、活锁 事务T1封锁了数据R,事务T2又请求封锁R,于是T2等待。T3也请求封锁R,当T1释放了R上的封锁之后系统首先批准了T3的请求,T2仍然等待。然后T4又请求封锁R,当T3释放了R上的封锁之后系统又批准了T4的请求,...,T2有可能永远等待避免活锁的简单方法是采用先来先服务的策略。二、死...
阅读全文
摘要:在载入页面后,浏览器输出流自动关闭。在此之后,任何一个对当前页面进行操作的document.write()方法将打开—个新的输出流,它将清除当前页面内容。必须确保调用document.close()方法,不然任何后面调用的document.write()方法只会把内容追加到页面后。
阅读全文
摘要:A buffer is a linear, finite sequence of elements of a specific primitive type. Aside from its content, the essential properties of a buffer are its c
阅读全文
摘要:两个线程,一个输出1,3,5,7......99;另一个输出2,4,6,8......100。1.线程同步 1 public class ST2 { 2 int i = 0; 3 4 public static void main(String[] args) { 5 ...
阅读全文
摘要:select a.* from A awhere exists ( select 1 from B b where a.id=b.id ) 1 public List exist(){ 2 List result; 3 Array A=(select * from A) 4 5 for...
阅读全文
摘要:触发器主要是通过事件进行触发而被执行的,而存储过程可以通过存储过程名字而被直接调用。当对某一表进行诸如UPDATE、 INSERT、 DELETE 这些操作时, 就会自动执行触发器所定义的SQL 语句,从而确保对数据的处理必须符合由这些SQL 语句所定义的规则。触发器的主要作用就是其能够实现由主...
阅读全文
摘要:1.机制:spring mvc的入口是servlet,而struts2是filter2. 性能:spring会稍微比struts快。spring mvc是基于方法,单例(servlet也是单例);而sturts是基于类,多例3. Intercepter的实现机制:struts有以自己的Interce...
阅读全文
摘要:1。servleturl传来之后,就对其进行处理,之后返回或转向到某一自己指定的页面。它主要用来在业务处理之前进行控制。 2。filter url传来之后,检查之后,可保持原来的流程继续向下执行。 filter可用来进行字符编码的过滤,检测用户是否登陆,禁止页面缓存等3。servlet 与...
阅读全文
摘要:1.意义同一个TCP连接来发送和接收多个HTTP请求/应答,而不是为每一个新的请求/应答打开新的连接的方法。2.优较少的CPU和内存的使用允许请求和应答的HTTP pipelining降低网络阻塞减少了后续请求的延迟(无需再进行握手)报告错误无需关闭TCP连接3.缺空闲的连接需要过段时间后才能被断开...
阅读全文
摘要:1.静态方法是使用公共内存空间的,就是说所有对象都可以直接引用,不需要创建对象再使用该方法。 2.测试
阅读全文
摘要:1.为什么用StringBuilder String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次
阅读全文
摘要:1.快速报错1 public class FailFast {2 public static void main(String[] args) {3 List c = new ArrayList();4 Iterator it = c.it...
阅读全文
摘要:看看有几重for循环,只有一重则时间复杂度为O(n),二重则为O(n^2),依此类推,如果有二分则为O(logn),如二分查找,如果一个for循环套一个二分,那么时间复杂度则为O(nlogn)。 常数阶O(1)、对数阶O(log2n)、线性阶O(n)、线性对数阶O(nlog2n)、平方阶O(n...
阅读全文
摘要:1.C++ & 混型C++能够记住其模板参数的类型,对于混型来说,使用参数化类型更加优雅。#include #include #include using namespace std;template class TimeStamped : public T { long timeStamp;pu...
阅读全文
摘要:1、myisam可以对索引进行压缩,innodb不压缩 2、索引都用b-tree, innodb使用 b+tree,NDB Cluster使用 T-Tree. 3、myisam 表级锁, innodb 行级锁 支持mvcc (多并发版本控制)行级锁的升级,多事务并发的数据一致。采用快照的形式。 4、
阅读全文
摘要:301 redirect: 301 代表永久性转移(Permanently Moved) 302 redirect: 302 代表暂时性转移(Temporarily Moved ) 一、案例 运营商的nginx 拦截请求,返回302 location:http://xxx.js 然后执行里面的js
阅读全文
摘要:Clustered and Secondary Indexessecondary index A type of InnoDBindexthat represents a subset of table columns. An InnoDB table can have zero, one, or...
阅读全文
摘要:14.5.13.4Insert Buffering Database applications often insert new rows in the ascending order of the primary key. In this case, due to the layoutof th...
阅读全文
摘要:什么是B-树 一。已排序文件的查找时间 对一个有N笔记录的已排序表进行二叉查找,可以在O(log2N)比较级完成。如果表有1,000,000笔记录,那么定位其中一笔记录,将在20 ( log21,000,000 = 19.931) 个比较级内完成。从磁盘上读取一笔记录,与之后的比较键值操作相比,在花
阅读全文
摘要:1. 表结构 2. repeatable read 级别下演示 3. 日志分析 事务(1)内容是:需要获取的锁 事务(2)内容是:持有事务(1)需要的锁,以及事务(2)需要的锁
阅读全文
摘要:在数据库中,对性能影响最大的包括数据库的锁策略、缓存策略、索引策略、存储策略、执行计划优化策略。 索引策略决定数据库快速定位数据的效率,存储策略决定数据持久化的效率。 一。索引注意事项 1.索引不存储null值。 更准确的说,单列索引不存储null值,复合索引不存储全为null的值。索引不能存储Nu
阅读全文
摘要:一。插入缓冲(insert buffer) 对于非聚集索引的插入和更新,不是每一次直接插入索引页中,而是首先判断插入的非聚集索引页是否在缓冲池中,如果在,则直接插入,否则, 先放入一个插入缓冲区中。好似欺骗数据库这个非聚集的索引已经插入到叶子节点了,然后再以一定的频率执行插入缓冲和非聚集索引页子节点
阅读全文
摘要:执行GROUP BY子句的最一般的方法:先扫描整个表,然后创建一个新的临时表,表中每个组的所有行应为连续的,最后使用该临时表来找到组 并应用聚集函数。在某些情况中,MySQL通过访问索引就可以得到结果,此类查询的 EXPLAIN 输出显示 Extra 列的值为 Using index for gro
阅读全文
摘要:一、介绍 哈希(hash)是一种非常快的查找方法,一般情况下查找的时间复杂度为O(1)。常用于连接(join)操作,如Oracle中的哈希连接(hash join)。 InnoDB存储引擎会监控对表上索引的查找,如果观察到建立哈希索引可以带来速度的提升,则建立哈希索引,所以称之为自适应(adapti
阅读全文
摘要:1.java编译器采用Bridge Method 来兼容本该使用泛型的地方使用了非泛型的问题。public class TestBridgeMethod { public static void main(String[] args) { //p引用的是S的对象,但S的test方...
阅读全文
摘要:一。意义function.apply(obj,args)obj代替function里this对象args作为参数传给function二。实例1.obj代替function里this对象1 function f(){2 alert(this.x + this.y);3 ...
阅读全文
摘要:一。成员内部类:与类的成员变量一样1可以加任意的修饰:private, protected,顶级类只可以为public, default2内部类不可脱离其外部类的限制使用,因此在外部类以外创建内部类要这样:outerObject=new outerClass(Constructor Paramete...
阅读全文
摘要:一。好处你是否已经对每次从Map中取得关键字然后再取得相应的值感觉厌倦?1 Set keys = map.keySet( );2 if(keys != null) {3 Iterator iterator = keys.iterator( );4 while(iterator.hasN...
阅读全文
摘要:https://www.cnblogs.com/orionhp/p/6362615.html ApplicationContext实现的默认行为就是在启动时将所有singleton bean提前进行实例化。提前实例化意味着作为初始化过程的一部分, ApplicationContext实例会创建并配置
阅读全文
摘要:一。final对象使用final关键字修饰一个变量时,是指引用不能变,引用的对象中的内容还是可以改变的。例如,对于如下语句: final StringBuffer a=new StringBuffer("immutable"); // a=new StringBuffer(""); //编译出错 ...
阅读全文
摘要:1.直接使用T 2.在内部使用Object,取出时转为T。ArrayList就是这种实现 3.使用类型标记
阅读全文
摘要:一。好处1.代替整个类泛型化2.static方法无法访问泛型类的类型参数,所以static方法需要使用泛型能力,就必须使其成为泛型方法。二。示例只需将泛型参数列表置于返回值之前。public class GenericMethods { public void f(T x) { S...
阅读全文
摘要:一。比较Comparable & Comparator 都是用来实现集合中元素的比较、排序的,只是 Comparable 是在内部实现的排序,Comparator 是在外部实现的排序。用 Comparator 是策略模式(strategy design pattern),不改变对象自身,而用一个策略...
阅读全文
摘要:我们知道 Web 容器本身就是多线程的,Web 容器为一个 Http 请求创建一个独立的线程,所以由此请求所牵涉到的 Spring 容器中的 Bean 也是运行于多线程的环境下。在绝大多数情况下,Spring 的 Bean 都是单实例的(singleton),单实例 Bean 的最大的好处是线程无关
阅读全文
摘要:一。饿汉模式public class Singleton{ private static Singleton instance = new Singleton(); private Singleton(){ ...
阅读全文
摘要:一。session的机制http是无状态的协议,客户每次读取web页面时,服务器都打开新的会话,而且服务器也不会自动维护客户的上下文信息,那么要怎么才能实现会话跟踪呢?session就是一种保存上下文信息的机制,它是针对每一个用户的,变量的值保存在服务器端,通过SessionID来区分不同的客户,s...
阅读全文
摘要:每一列都是不可分割的原子数据项实体的属性完全依赖于主关键字。--消除部分依赖任何非主属性不依赖于其它非主属性。--在2NF的基础上,消除传递依赖
阅读全文
摘要:一。介绍 聚合函数如SUM, COUNT, MAX, AVG等。这些函数和其它函数的根本区别就是它们一般作用在多条记录上。而通过使用GROUP BY子句,可以让SUM 和 COUNT 这些函数对属于一组的数据起作用。当你指定 GROUP BY region 时,只有属于同一个region的一组...
阅读全文
摘要:无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。 客户端与服务器进行动态交互的Web应用程序出现之后,HTTP无状态的特性严重阻碍了这些应用程序的实现,毕竟交...
阅读全文
摘要:一、前言 java流在处理上分为字符流和字节流。 (1)字符流(Writer/Reader)处理的单元为2个字节的Unicode字符,分别操作字符、字符数组或字符串。 (2)字节流(OutputStream/InputStream)处理单元为1个字节,操作字节和字节数组。 (3)字节流可用于任何类型
阅读全文
摘要:一。概念每一趟在n-i+1(i=1,2,…n-1)个记录中选取关键字最小的记录作为有序序列中第i个记录。基于此思想的算法主要有简单选择排序、树型选择排序和堆排序。二。示例初始序列: {49 27 65 97 76 12 38}第1趟:12与49交换:12{27 65 97 76 49 ...
阅读全文
摘要:ReentrantLock 类实现了 Lock ,它拥有与 synchronized 相同的并发性和内存语义,但是添加了类似锁投票、定时锁等候和可中断锁等候的一些特性。 此外,它还提供了在激烈争用情况下更佳的性能。 ReentrantLock与synchronized的不同点 (1)Reentran
阅读全文