`
文章列表
1、sleep() 使当前线程(即调用该方法的线程)暂停执行一段时间,让其他线程有机会继续执行,但它并不释放对象锁。也就是说如果有synchronized同步快,其他线程仍然不能访问共享数据。注意该方法要捕捉异常。 例如有两个 ...
Vector和ArrayList 1、vector是线程同步的,所以他也是线程安全的,而ArrayList是线程异步的,是不安全的。如果不考虑到线程的安全因素,一般用ArrayList效率较高。 2、如果集合中的元素的数目大于目前集合数组的长度时,Vector增长率为目前数组长度的100%,而ArrayList增长率为目前数组长度的50%.如果在集合中使用数据量比较大的数据,用vector有一定的优势。 3、如果查找一个制定位置的数据,vector和ArrayList使用的时间是相同的,都是0(1),这个时候使用vector和ArrayList都可以。而如果移动一个指定位置的数据花费 ...
Windows下JAVA用到的环境变量主要有3个,JAVA_HOME、CLASSPATH、PATH。下面逐个分析。      JAVA_HOME 指向的是JDK的安装路径,如C:\jdk1.5.0_06,在这路径下你应该能够找到bin、lib等目录。值得一提的是,JDK的安装路径可以选择任意磁盘目录,不过建议你放的目录层次浅一点,如果你放的目录很深,比如x:\XXXXXX\xxxxx\XXXX\xxxx\XXXX\xxxx\XXXX\xxx…… 那么,下面的步骤和以后的应用你都要受累了,呵呵。设置方法:           JAVA_HOME=C:\jdk1.5.0_06 ...
The load-on-startup element indicates that this servlet should be loaded (instantiated and have its init() called) on the startup of the web application. The optional contents of these element must be an integer indicating the order in which the servlet should be loaded. If the value is a negative ...
java中经常有一些静态块,这是用来在生成类之前进行的初始化,无论java还C++语言中的static,都是最先初始化好的。结构如下: static { 静态语句代码块 } { 非静态语句代码块 } 异同点 相同点:都是在JVM加载类时且在构造方法执行之前执行,在类中都可以定义多个,一般在代码块中对一些static变量进行赋     值。 不同点:静态代码块在非静态代码块之前执行(静态代码块--》非静态代码块--》构造方法)。     静态代码块只在第一次new执行一次,之后不在执行,而非静态代码块在每new一次就执行一次。非静态代码块可以     在普通方法中定义 ...
JDK中定义的空接口 import java.io.Serializable; import java.lang.annotation.Annotation; import java.rmi.Remote; import java.util.RandomAccess; 个人理解为:空接口仅做标记使用,无其他含义 Spring中也有大量空接口 列出部分如下: public interface Sp ...
  1. 下载MongoDB,此处下载的版本是:mongodb-linux-i686-1.8.1.tgz.tar。 http://fastdl.mongodb.org/linux/mongodb-linux-i686-1.8.1.tgz   相关阅读: MongoDB Linux下的安装和启动  http://www.linuxidc.com/Linux/2011-05/36309.htm MongoDB下的高级查询示例  http://www.linuxidc.com/Linux/2011-05/36312.htm MongoDB Java API for 插入和单collect ...
Hibernate配置属性 hibernate.dialect:一个Hibernate Dialect类名允许Hibernate针对特定的关系数据库生成优化的SQL。取值full.classname.of.Dialect(详解见下) hibernate.show_sql:输出所有SQL语句到控制台,有一个另外的选择是把org.hibernate.SQL这个log c ...
function StringBuffer(){ this._strings = new Array(); } StringBuffer.prototype.append = function(str){ this._strings.push(str); return this; } StringBuffer.prototype.toString = function(){ return this._strings.join(""); } StringBuffer.prototype.length = function(){ v ...
jQuery.extend({ getBrowserType: function(){ var OsObject = ""; if (navigator.userAgent.indexOf("MSIE") >= 0) { return "MSIE"; // IE浏览器 } if (navigator.userAgent.indexOf("Firefox") >= 0) { return "Firefox"; // Firefox浏览器 ...
jQuery.extend( { min : 1, reg : function(x) { jQuery('#J_Tip').html(""); jQuery('#J_Tip').hide(); return new RegExp("^[1-9]\\d*$").test(x); }, amount : function(obj, mode) { var x = jQuery(obj).val(); if (this.reg(parseInt(x))) { if (mode) { x++; ...
  /******************************************************************************* * 虚拟创建HashMap对象 * @author DT 2011-12-17 * @version 1.0 * * 说明: * HashMap有两个Array数组构成 分别保存key、value * 场景: * 数据封装、解析 * ****************************************************************************** ...
  /******************************************************************************* * JS示例 参考样本 * @author DT 2011-8-31 * @version 4.1.1 *******************************************************************************/ (function(jQuery){ var jq = jQuery.noConflict(); jq.fn.AjaxSample = f ...
DateTimer = function(elem_id, current) { var local = new Date().getTime(); this.current = current; this.diff = current - local; this.elem = document.getElementById(elem_id); } DateTimer.prototype.start = function() { var _self = this; var timerID = setTimeout(functi ...
/** * 经常会在js里用到数组,比如 多个名字相同的input, 若是动态生成的, 提交时就需要判断其是否是数组. * if(document.mylist.length != "undefined" ) {} 这个用法有误. * 正确的是: * if(typeof(document.mylist.length) != "undefined" ) {} * 或 * if(!isNaN(document.mylist.length) ) {} * typeof的运算数未定义,返回的就是 "undefin ...
Global site tag (gtag.js) - Google Analytics