- 浏览: 1076647 次
- 性别:
- 来自: 武汉
最新评论
-
flyfeifei66:
list<bean> bean 中有 list&l ...
freemarker中的list -
BelloVersion:
第五种错误Remote host closed connect ...
客户端如何使用httpclient向https服务器发送数据 -
willxue:
看了半天 前面说的是错的?。。。
反向键索引的原理和用途 -
liulanghan110:
quainter 写道麻烦博主,参数为数组时,paramete ...
MYBATIS 的parameter -
quainter:
麻烦博主,参数为数组时,parameterType怎么写啊?
MYBATIS 的parameter
文章列表
一,ClassLoader的大体过程
如图:
详解:
虚拟机一启动,会先做一些初始化的动作。一旦初始化动作完成之后,就会产生第一个类别加载器,即所谓的Bootstrap Loader,Bootstrap Loader 是由C++ 所撰写而成,这个Bootstrap Loader所做的初始工作中,除了也做一些基本的初始化动作之外,最重要的就是加载定义在sun.misc 命名空间底下的Launcher.java 之中的ExtClassLoader( 因为是inner class ,所以编译之后会变成Launcher$ExtClassLoader.class) ,并设定其 ...
众所周知,系统读取数据时,从内存中读取要比从硬盘上速度要快好几百倍。故现在绝大部分应用系统,都会最大程度的使用缓存(内存中的一个存储区域),来提高系统的运行效率。
一、什么时候应用系统会从缓存中获取数据?
数据库从服务器上读取数据时,可以从硬盘的数据文件中获取数据,也可以从数据库缓存中读取数据。现在数据库管理员需要搞清楚的是,在什么样的情况下,系统是从缓存中读取数据,而不是从硬盘的数据文件中读取数据?
简单的说,数据缓存就是内存中的一块存储区域,其存储了用户的SQL文本以及相关的查询结果。通常情况下,用户下次查询时,如果所使用的SQL文本是相同的,并且自从上次查 ...
一、什么是动态性语言
一般而言,开发者社群说到动态语言,大致认同的一个定义是:“程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言”。从这个观点看,Perl,Python,Ruby是动态语言,C++,Java,C#不是动态 ...
泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。 Java语言引入泛型的好处是安全简单。 在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是一个安全隐患。 泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自 ...
先看如下代码:
Objet obj = new Object();
变量obj是一个内存,new Object()是另一个内存,此时,变量obj所对应的内存中存储的数值就是对象占用的那块内存的首地址(即保存着对象的引用)。变量是放在栈里的,而对象是放在堆里的。所以上面的语句,obj变量放在栈里,保存着Object对象的引用(Object对象在堆中的首地址),而new Object()是在堆上申请了一块内存,这块内存放着Object这个对象。
变量一般是有存活时间的。比如,一个方法内的变量只存活在这个方法内,也就是出了这个方法,这个变量就不存在了 ...
先看这样一个问题。比如有一个大小为10的数组,我要把1-9放进去。那么有一种办法就是按顺序从数组的第一个一直放到最后一个。比如我这么放2,4,6,8,1,3,5,7,9 ,那么我要查找一个数在在这个数组的哪个位置时,我得用一个循环检测。当数组很大时,效率会很低。如果我这样做呢?将元素与9求余,得到一个结果,之后将元素放到该位置。比如,2%9 结果为2,那么数组的第2个位置放上2。每个元素都根据这样的一个函数处理后放到指定的位置。那么当查找该元素时,只需要将该元素利用之前的函数再处理一次,就可以得到其在哪个位置。如,我需要查找9的位置。那么我用9%9,知道9在数组的第一个位置。也就是说,此时查找 ...
首先,来介绍一下Java中的集合。 总的来说,Java中的集合(Collection)有两类,一类是List,再有一类是Set。你知道它们的区别吗?前者集合内的元素是有序的,元素可以重复;后者元素无序,但元素不可重复。那么这里就有一 ...
==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用==操作符。 如果一个变量指向的数据是对象类型的,那么,这时候涉及了两块内存,对象本身占用一块内存(堆内存),变量也占用一块内存, 例如:
Objet obj = new Object();
变量obj是一个内存,new Object()是另一个内存,此时,变量obj所对应的内存中存储的数值就是对象占用的那块内存的首地址。对于指向对象类型的变量,如果要比较两个变量是否指向同一个对象,即要看这两个变量所对应的内存中的数值是否相等,这时候就 ...
在设置某些表单的默认数据,而且不让使用者修改这些数据的时候,我们通常会设置该项为只读。通常情况下Input输入框我们只需要向该Input添加Readonly="Readonly"即可。
<input type="text" readonly="readonly" name="name" value="默认的input数据" />
<input type="text" readonly="readonly" name=" ...
公用表表达式
(CTE)
具有一个重要的优点,那就是能够引用其自身,从而创建递归
CTE
。递归
CTE
是一个重复执行初始
CTE
以返回数据子集直到获取完整结果集的公用表表达式。
递归
CTE
可以极大地简化在 ...
表连接分为内连接、外连接和交叉连接。
内连接 (INNER JOIN) :
内连接查询操作列出与连接条件匹配的数据行,它使用比较运算符比较被连接列的列值。内连接分三种:
等值连接:在连接条件中使用等于号 (=) 运算符 ...
先创建测试数据
:
create table
student
(
id
int
primary key not null
,
sid
int
)
create table
test
(
id
int
primary key not null
,
sid
int
)
create procedure insertDate()
BEGIN
DECLARE ...
网上有些地方说有关非的操作符不能利用索引,这些操作符有
!=
、
<>
、
!<
、
!>
、
NOT EXISTS
、
NOT IN
、
NOT LIKE
。
下面来测试一下
!=
、
<>
、
!<
、
!>
、
NOT IN
(
NOT EXISTS
、
NOT LIKE
会在其他文章中详细说明)
。
测试版本为
DB2 v8.1.0.64 (
查看
DB2
版本
db2level)
和
DB2 v9.7
1.
测试选择性不强 ...
网上有些资料说含有
null
的列不能创建索引,还有资料说因为一般的索引是
b_
树结构,而
b+
树不能存储
null
值,所以
is null
和
is not null
都不能利用
索引。为了证明以上说法,我做了一下测试。
1.
测试含有
null
的列是否能创建索引
先创建测试数据
:
create table
student
在开始测试前先创建测试数据:
create table
student
(
id
int
primary key not null
,
sid
int
)
create procedure
insertDate
()
BEGIN
DECLARE
v_id
int
;
set
v