- 浏览: 45300 次
- 性别:
- 来自: 北京
文章列表
悟透JavaScript
- 博客分类:
- JavaScript
引子
编程世界里只存在两种基本元素,一个是数据,一个是代码。编程世界就是在数据和代码千丝万缕的纠缠中呈现出无限的生机和活力。 数据天生就是文静的,总想保持自己固有的本色;而代码却天生活泼,总想 ...
这是一篇关于介绍jQuery Sizzle选择器的文章,由我和obility共同完成。在文中,我们试图用自己的语言配以适量的代码向读者展现出Sizzle在处理选择符时的流程原理,以及末了以少许文字给你展示出如何借用Sizzle之手实现自定义选择器(也许更标准的叫法叫做过滤符)和它与YUI 选择器的大致比较。
前序
jQuery相比1.2的版本,在内部代码的构造上已经出现了巨大的变化,其之一便是模块的分发.我记得09年在jquery 9月开的一次大会上 john放出的一张ppt上 也指出了当前的jquery下一步目标,不仅仅是除了sizzle选择器的分离,届时core,attribute,c ...
浏览器的加载与页面性能优化
- 博客分类:
- JavaScript
本文将探讨浏览器渲染的loading过程,主要有2个目的:
了解浏览器在loading过程中的实现细节,具体都做了什么
研究如何根据浏览器的实现原理进行优化,提升页面响应速度
由于loading和parsing是相互交织、错综复杂的,这里 ...
非阻塞式JavaScript脚本介绍
- 博客分类:
- JavaScript
JavaScript 倾向于阻塞浏览器某些处理过程,如HTTP 请求和界面刷新,这是开发者面临的最显著的性能问题。保持JavaScript文件短小,并限制HTTP请求的数量,只是创建反应迅速的网页应用的第一步。一个应用程序所包含的功能越多,所需要的JavaScript 代码就越大,保持源码短小并不总是一种选择。尽管下载一个大JavaScript 文件只产生一次HTTP 请求,却会锁定浏览器一大段时间。为避开这种情况,你需要向页面中逐步添加JavaScript,某种程度上说不会阻塞浏览器。非阻塞脚本的秘密在于,等页面完成加载之后,再加载JavaScript 源码。从技术角度讲,这意味着在wind ...
js中apply方法的使用(转)
- 博客分类:
- JavaScript
1、对象的继承,一般的做法是复制:Object.extend
prototype.js的实现方式是:
Object.extend = function(destination, source) { for (property in source) { destination[property] = source[property]; } return destination; }
...
eval解析JSON中的注意点(转)
- 博客分类:
- JavaScript
在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式:
1.一种为使用eval()函数。
2. 使用Function对象来进行返回解析。
使用eval函数来解析,并且使用jquery的each方法来遍历
用jquery解析JSON数据的方法,作为jquery异步请求的传 ...
RMI是什么?
RMI 指的是远程方法调用 (Remote Method Invocation)。它是一种机制,能够让在某个 Java 虚拟机上的对象调用另一个 Java 虚拟机中的对象上的方法。可以用此方法调用的任何对象必须实现该远程接口。调用这样一个对象时 ...
CAS单点登录应用(转)
- 博客分类:
- 开源Java
一. 基础知识点1.CAS Server 是一套基于 Java 实现的服务,该服务以一个 Java Web Application 单独部署在与 servlet2.3 兼容的 Web 服务器上,另外,由于 Client 与 CAS Server 之间的交互采用 Https 协议,因此部署 CAS Server 的服务器还需要支持 SSL 协议。
2.HTTPS的全称是Secure Hypertext Transfer Protocol(安全超文本传输协议),是在http协议基础上增加了使用SSL加密传送信息的协议。它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间 ...
基于Jenkins搭建集群部署环境(转)
- 博客分类:
- 开源Java
概述
在开发一个软件的过程中,测试或者项目经理经常需要得到软件的最新版本.如果每次都是开发手动编译给他们,有点浪费时间,也不科学.所以这个任务可以交给计算机来作,每当你有代码提交的时候或者每当系统定期检测到有代码更新的时候,系统自动进行编译打包,并可以通过浏览器来下载最新的软件版本。你也许会说,这个不是持续集成的一部分么?哈哈,的确是。
这里使用的CI(持续集成)软件是 Jenkins CI,以前叫做Hudson ci后来迫于oracle的相关政策,年初的时候改名了。https://github.com/jenkinsci 这里是其代码.其实CI囊括的东西远远不止自动编译了,还可 ...
前置条件:配置tomcat、maven、jdk的环境变量
本文以jenkins为例(hudosn是jenkins的前身,配置方式类似、需要自行安装)
将下载好的jenkins、hudson放入tomcat或者其他web容器中
jenkins发布后就是普通web项目(http://localhost/jenkins/),登录进入首页。
1、进入“系统管理”点击“系统设置” 配置jdk、maven如下图,然后保存
2、新建job,如下图
3、配置svn
启动hudson、jenkins等提示 Your container doesn't use UTF-8 to decode URLs。。。。
在tomcat\conf\server.xml文件中找到
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/& ...
js命名空间(解决不同js lib冲突问题)
- 博客分类:
- 原创博文
//声明一个全局对象Namespace,用来注册命名空间
Namespace = new Object();
// 全局对象仅仅存在register函数,参数为名称空间全路径
Namespace.register = function(wk_NS)
{
var nsArray = wk_NS.split('.');
var sEval = "";
var sNS = "";
for (var i = 0; i < nsArray.length; i++)
{
if (i ! ...
oracle数据备份
- 博客分类:
- 原创博文
exp/imp备份
exp userName/password@sid full=y file=fileName.dmp
imp wlkp/wlkp full=y fromuser=wlkp file=d:/filename_20110323.dmp
SQL Loader
oracle的一些函数
- 博客分类:
- 原创博文
select initcap('hello word ') from dual;
Hello Word 首字母大写
Select concat('a','b') from dual;
ab 等价与 'a'||'b'
Select nvl(a,b) from dual;
当a等于''或者null 时返回b
等价函数:
Nvl2(a,b,c)当a为null时返回b 否则返回c
DECODE(value, if1, then1, if2,then2, if3,then3, . . . else )
exists 用户及效率见(QQ截图20130420 ...
MERGE语句是 oracle 9i 新增的语法,用来合并 UPDATE 和 INSERT 语句。
通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询,
连接条件匹配上的进行UPDATE,无法匹配的执行INSERT。
这个语法仅需要一次全表扫描就完成了全部工作,执行效率要高于INSERT+UPDATE。
create table test1(eid number(10), name varchar2(20));
create table test2(eid number(10), name varchar2(20));
delete test2
c ...