上一课主要讲了jQuery中的缓存机制Data构造方法的源码解析,这一课主要讲jQuery是如何利用Data对象实现有关缓存机制的静态方法和实例方法的.我们接下来,来看这几个静态方法和实例方法的源码解析: data_user = new Data();    //对外使用的数据缓存对象data_priv = new Data();    //内部的数据缓存对象,内部使用 jQuery.extend({      //在jQuery中添加静态方法 acceptData: Data.accepts,…
jQuery中有三种添加数据的方法,$().attr(),$().prop(),$().data().但是前面两种是用来在元素上添加属性值的,只适合少量的数据,比如:title,class,name等.对于json这种数据量大的,就适合用data方法来添加,而data方法就是jQuery缓存机制最重要的方法. jQuery中为什么要用缓存机制系统呢?因为DOM元素与js对象之间互相引用,在大部分浏览器下会引起内存泄漏.为了解决这个问题,jQuery就写了一个缓存机制系统.举个例子: var di…
org.eclipse.jetty.webapp 包下的 StandardDescriptorProcessor类.该类对象会在WebAppContext的doStart方法启用 注册了遍历web.xml中的元素中的方法,后续会用反射机制来调用这些方法.比如filter元素用visitFilter处理. IterativeDescriptorProcessor的process ()方法会对web.xml中的每个元素进行遍历.web.xml中的每个元素算是一个node.比如 <filter>&l…
最近.net core 1.1也发布了,蹒跚学步的小孩又长高了一些,园子里大家也都非常积极的在学习,闲来无事,扒拔源码,涨涨见识. 先来见识一下web站点是如何启动的,如何接受请求,.net core web app最简单的例子,大约长这样 public static void Main(string[] args) { //dotnet NetCoreWebApp.dll --server.urls="http://localhost:5000/;http://localhost:5001/&…
前言 公司实习分配给的任务是精简和优化 Jetty 框架,这里做简单的思路记录(比较乱),源码是 Jetty 7.x.x . 大体流程 Connector 接口的实现类 SelectChannelConnector (后称连接器)会创建利用线程池调度Accpetor(接收器),每个线程对应一个接收器,接收器的 run() 方法会调用连接器的 accpet() 方法阻塞等待客户端连接. 注意: 一个连接器只创建一个 ServerSocketChannel ,因此只能监听一个端口. 当有客户端连接过…
Web容器启动过程,主要讲解Servlet和Spring容器结合的内容. 流程图如下: Web容器启动的Root Context是有ContextLoaderListener,一般使用spring,都会在web.xml中配置这个监听器. <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> 下面…
1.处理点击事件的方法 View的层级 我们知道View的结构是树形的结构,View可以放在ViewGroup中,这个ViewGroup也可以放到另一个ViewGroup中,这样层层的嵌套就组成了View的层级. 什么是点击事件分发 当我们点击屏幕,就产生了触摸事件,这个事件被封装成了一个类:MotionEvent.而当这个MotionEvent产生后,那么系统就会将这个MotionEvent传递给View的层级,MotionEvent在View的层级传递的过程就是点击事件分发. 点击事件分发的…
上篇讲到.net core web app是如何启动并接受请求的,下面接着探索kestrel server是如何完成此任务的. 1.kestrel server的入口KestrelServer.Start(Microsoft.AspNetCore.Hosting.Server.IHttpApplication) FrameFactory创建的frame实例最终会交给libuv的loop回调接收请求.但是在这过程中还是有很多的初始化工作需要做的.后面我们就管中窥豹来看一看. public void…
http://frodoking.github.io/2015/03/12/android-okhttp/ Android为我们提供了两种HTTP交互的方式:HttpURLConnection 和 Apache HTTP Client,虽然两者都支持HTTPS,流的上传和下载,配置超时,IPv6和连接池,已足够满足我们各种HTTP请求的需求.但更高效的使用HTTP可以让您的应用运行更快.更节省流量.而OkHttp库就是为此而生. OkHttp是一个高效的HTTP库: 支持 SPDY ,共享同一个…
问题 为什么开发web项目,spring-boot-starter-web 一个jar就搞定了?这个jar做了什么? 通过 spring-boot 工程可以看到所有开箱即用的的引导模块 spring-boot-starter-xxx 都在 spring-boot-starters 子模块中,且所有的 spring-boot-starter-xxx 模块中都没有代码,都是在其他包中就完成对应的功能.首先,分析其依赖 依赖 注意:图中的 Jakarta.xxxx 包是原来的 javax.xxxx 包…