可以通过看MessageBox.js的源码来深入认识,记住它的主要用法.Ext.MessageBox是实用类,用于生成不同风格的消息框,它是Singleton(单例),别名Ext.Msg.注意MessageBox是异步的,不同于一般的Javascript'alert'(它将停止浏览器的执行),显示一个MessageBox不会导致代码停止.出于这个原因,如果你有代码应该只运行在MessageBox用户反馈之后,你就应该加一个回调函数. Ext.MessageBox.alert() 样式:警告框只有…
首先先补习下企业库的Caching Application Block的相关知识: 1.四大缓存方式,在Caching Application Block中,主要提供以下四种保存缓存数据的途径,分别是:内存存储(默认).独立存储(Isolated Storage).数据库存储(DataBase Cache Storage)和自定义存储(Custom Cache Storage). 2.多种存储方式,抛开自定义存储不谈,内存存储是最基本的缓存,仅仅是将数据缓存到内存当中,虽然速度快但是无法进行持久…
1.业务级脚本开发 登录脚本->思路:在线程组下新建两个HTTP请求,一个是完成访问登录页,一个是完成登录的数据提交.   步骤如下: 1) 访问登录页 2) 提交登录数据的HTTP PS:对于业务级的脚本建议更加真实地模拟用户的请求操作. 2.接口级脚本开发 1) 单接口测试方法 启动Jmeter 新建线程组 在线程组下新建一个HTTP请求 在HTTP请求中填入接口信息,包括地址.参数.请求方法(GET)等 新建一个查看结果数监听器 运行脚本验证结果,优化脚本(比如可以对参数进行参数化) 2)…
文档中描述 Panel(面板)是一个容器,它具有特定的功能和结构部件,这使它成为面向应用用户界面的完美基石.面板,继承自Ext.container.Container,能够配置布局以及子组件(Child Components).当向Panel中添加指定的子项(Child Items)或者动态的添加组件时,记得要考虑如何排版Panel中的子元素,这些子元素是否需要Ext内建Layout布局的方案.默认情况下,Panel使用自动(Auto)布局.这种方式,只是呈现子组件,一个接一个向Containe…
Panel加载页面 var myPanel=Ext.create('Ext.panel.Panel',{ bodyPadding: "15px 10px 0 10px", title:'目标', width:300, height:220, html:'<p>好好学习,天天向上!</p>',//当你添加autoLoad之后,这个内容没有添加上 bodyStyle:'background:pink;color:white', frame:false,//True…
一个专门Panel用作程序窗口.默认的,Window可以是浮动的(floated).可缩放(resizable)以及可拖动的(draggable).Window能够被最大化适应可视窗口,(restored)恢复到先前的大小以及可以最小化.Window也可以被链接到一个Ext.ZIndexManager或者由Ext.WindowManager来提供分组(grouping).活动(activation).向前(to front).向后(to back)和其它特定程序行为. 默认情况下,Window要…
写写就发现,有些代码不查查源头,不明白是怎么回事?搜到这篇文章觉得还是收益匪浅,更容易读懂代码. Classes in Ext JS 4: Under the hood Countdown to Ext JS 4: Dynamic Loading and New Class System[官网] 整理如下: 简单回顾一下,新的Class System (类系统),使我们能够这样定义类: Ext.define('Ext.Window', { extend: 'Ext.Panel', require…
上回在Panel的应用中我们应该能大致区分开conteEl和renderTo,这回我们从定义中区分. 在Panel的API中, contentEl:String指定一个现有的HTML元素或者id作为此组件的内容.这个config选项是用来利用现有的HTML元素,并将其放置在一个新的组件的布局元素(它只是将指定的DOM元素移动到,已经被渲染的组件之中当内容使用)注意:在其他配置的HTML被插入到组件之后,指定的HTML元素被追加到组件的布局元素中,document中将不再包含此元素.这个指定的HT…
注:这里只是说一下sendmessage的一个过程,post就类似的 如果我们需要发送消息,会调用sendMessage方法 public final boolean sendMessage(Message msg) { return sendMessageDelayed(msg, 0); } 这个方法会调用如下的这个方法 public final boolean sendMessageDelayed(Message msg, long delayMillis) { if (delayMilli…
1 引子 上次读书笔记主要是学习了应用三维坐标变换矩阵对二维的图形进行变换,并附带介绍了GLSL语言的编译.链接相关的知识,之后介绍了GLSL中变量的修饰符,着重介绍了uniform修饰符,来向着色器程序传入输入参数. 这次读书笔记的内容相对有趣一些,主要是和园友们分享讨论三维坐标变换矩阵在三维几何体上的应用,以及介绍一下如何实现三维图形与用户操作的交互.这一次笔记在三维编程中也是非常重要的——我们最后开发的三维程序最终就是要和目标用户进行交互的. 之前一直没有在博客上放过gif格式的动画图片,…
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 前文链接 支持JDK19虚拟线程的web框架,之一:体验 支持JDK19虚拟线程的web框架,之二:完整开发一个支持虚拟线程的quarkus应用 支持JDK19虚拟线程的web框架,之三:观察运行中的虚拟线程 本篇概览 本篇是<支持JDK19虚拟线程的web框架>系列的第四篇,主要内容是阅读quarkus源码,开阔眼界,了解框架级别的软件是如何使用虚…
废话 这几天有想看源码的想法,于是就开始了源码的研究,经过几天的摸索发现看源码还是有点技巧在里面的,想着把这些东东写下来作为一个小总结. 在一个多月前我对Vue源码进行了一次研究,那时看源码的方式基本上是从上往下看,结果看着看着就看不下去了,后来找了一个很老的版本看,但看的还是不太懂,于是想着干脆看一些工具类得了,因为工具类一般比较单一不会和上下文有太多的联系,有点基本都能看懂. 不管是什么源码其研究方式基本上都是大同小异的,标题写jQuery是因为这几天正好在研究jQuery源码,这里就拿jQ…
开篇闲扯 在工作中,相信很多人都有这种体会,与其修改别人代码,宁愿自己重写. 为什么? 先说为什么愿意自己写: 从0-1的过程,是建立在自己已有认知基础上,去用自己熟悉的方式构建一件作品.也就是说, 1.对目标的认知是熟悉的(当然每个人水平可能不一样,也有可能是错的,这不重要,重要的是自认为是符合的): 2.使用的工具是自己熟悉的. 接下来就是去做一件自己熟悉的领域的事而已. 再说为什么不愿意修改别人代码: 1.首先要在阅读代码过程中,去不断的检视对方的实现是否符合自己的认知,很可能由于双方认识…
目录 为什么要使用ConcurrentHashMap? ConcurrentHashMap的结构特点 Java8之前 Java8之后 基本常量 重要成员变量 构造方法 tableSizeFor put方法存值 putVal initTable treeifyBin tryPresize transfer get方法取值 get 总结 参考阅读 系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与…
昨天有个大牛说我啰嗦,眼光比较细碎,看不到重点.太他爷爷的有道理了!要说看人品,还是女孩子强一些.原来记得看到一个男孩子的抱怨,说怎么两人刚刚开始在一起,女孩子在心里就已经和他过完了一辈子.哥哥们,不想这么远行吗?看看何洁,看看带着俩娃跳楼的妈妈.所以现在的女孩子是很明白的,有些男孩子个子不高,其貌不扬,但是一看那人品气质就知道能找个不错的女盆友.不过要说看人的技术能力,男孩子确实更胜一筹,咱得努力了. 总结一下要形成的习惯: 1>有空时隔一段时间要做几道算法题,C语言和JAVA都可以,主要是训…
java 日志体系(四)log4j 源码分析 logback.log4j2.jul 都是在 log4j 的基础上扩展的,其实现的逻辑都差不多,下面以 log4j 为例剖析一下日志框架的基本组件. 一.总体架构 log4j 使用如下: @Test public void test() { Log log = LogFactory.getLog(JclTest.class); log.info("jcl log"); } log.info 时调用的时序图如下: 在 log4j 的配置文件,…
昨天有个大牛说我啰嗦,眼光比较细碎,看不到重点.太他爷爷的有道理了!要说看人品,还是女孩子强一些. 原来记得看到一个男孩子的抱怨,说怎么两人刚刚开始在一起,女孩子在心里就已经和他过完了一辈子.哥哥们,不想这么远行吗?看看何洁,看看带着俩娃跳楼的妈妈. 所以现在的女孩子是很明白的,有些男孩子个子不高,其貌不扬,但是一看那人品气质就知道能找个不错的女盆友.不过要说看人的技术能力,男孩子确实更胜一筹,咱得努力了. 总结一下要形成的习惯: 有空时隔一段时间要做几道算法题,C语言和JAVA都可以,主要是训…
1. AQS共享模式 前面已经说过了AQS的原理及独享模式的源码分析,今天就来学习共享模式下的AQS的几个接口的源码. 首先还是从顶级接口acquireShared()方法入手: public final void acquireShared(int arg) { if (tryAcquireShared(arg) < 0) doAcquireShared(arg); } 与acquire()方法一样,tryAcquireShared()为自己是实现的对资源获取的接口,AQS对返回值的语义已经定…
1. ThreadLocal的理解 ThreadLocal,顾名思义,就是线程的本地变量,ThreadLocal会为每个线程创建一个本地变量副本,使得使用ThreadLocal管理的变量在多线程的环境下,每个线程都是访问的是自己内部的副本变量,将全局变量局部化,跟局部变量一样的使用,从而避免了一些线程安全的问题.比如在数据库连接池中获取的连接时,此时的连接对于每个线程来说,都应该是独立的,所以可以使用ThreadLocal来管理该线程的连接.从而避免在多线程环境下的连接的安全问题. 2. Thr…
[学霸]深圳-鑫 2017/7/11 13:54:07只是学习怎么用QT的话,不用看源码.看帮助文档就很好要学习编码风格与思路,就看看源码 [学神]武汉-朝菌 2017/7/11 13:54:39没必要看源码..把文档学通就已经牛逼了 [学霸]西安-火边的冰块呵呵,好习惯,不过我不建议你挖的太深.Qt有太多的东西需要了解和学习,先拓宽知识面,再深入下去,如果一开始就深入下去,你会失去兴趣的.Qt类有几百个还是几千个?自带的例子有几百个?这些如果都过一遍,基本上就没有实现不了的了,就看怎么实现了.…
本文是数字麦克风笔记文章的单片机程序.一些朋友私信我,调试出问题. 我就把源码贴出来吧,可能主要问题是DMA的配置. 尤其双DMA时候,需要手动启动I2S的接收DMA,HAL库没有这个接口,不看datasheet是找不到这个毛病的,这也是HAL库用多了引起的问题,一些特底层的问题大家都不愿意去搞了. /* USER CODE BEGIN Header */ /** ******************************************************************…
1.谈谈如何看源码   个人觉得拿到一个开源的项目,首先要先使用一下. 如果是有页面的那种,可以先把测试平台部署起来,然后到处随意点点,然后用一下最基础的功能,走一遍基础的使用流程.不用担心会把系统弄坏,弄坏了说明没有配置好或者本身代码有bug,这时候可以尝试先自己解决一下,如果能解决是好的,如果不能解决,那就更好了,因为这个时候会激发出你的好奇心,好奇心会驱使你有更浓厚的兴趣去研究源码. 如果是没有页面的,比如服务器软件或者中间件等,那么也是先使用一下这个软件最基础的功能. 对这个软件有一些了…
先看源码: 首先看构造器,构造器有三种,一种直接给定初始长度的,如下代码 public ArrayList(int initialCapacity) { if (initialCapacity > 0) { //判断长度是否大于0 如果大于0 则直接将长度给他 this.elementData = new Object[initialCapacity]; } else if (initialCapacity == 0) { //如果等于0,定义一个空数组实例 this.elementData =…
首先声明下 这是我在eoe上转载的 写的很好就摘抄了... 第一步 下载源码 svn下载,下载地址:spark:http://svn.igniterealtime.org/svn/repos/spark/trunkopenfire:http://svn.igniterealtime.org/svn/repos/openfire/trunksmack:http://svn.igniterealtime.org/svn/repos/smack/trunk 新建文件夹,命名spark--->右键SVN…
idea看源码,可以直接搜索.看接口具体调用的是哪个类里面的方法(多态)…
今天我们一起探讨下ThreadLocal的实现原理和源码分析.首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码分析了其实现原理和使用需要注意的地方,最后给出了两个应用场景.相信本文一定能让大家完全了解ThreadLocal. ThreadLocal是什么? ThreadLocal是啥?以前面试别人时就喜欢问这个,有些伙伴喜欢把它和线程同步机制混为一谈,事实上ThreadLocal与线程同步无关.ThreadLocal虽然提供了一种解决多线程环境下成员变量的…
Eclipse项目里面看源码 1.新建项目列表 2.进入struts2-core-2.3.20.jar,双击之后,看不到源码 3.右键struts2-core-2.3.20.jar,选择properties,在里面设置源码路径. 我的路径为:  E:\struts-2.3.20\src\core\src\main\java 4.之后查看,源码出来了. 5.注意事项: 如果在struts-2.3.20-all.zip解压的包里看不到,可以去官网自己从新下载一个源码包,选择这个struts-2.3.…
1:感觉见鬼了一般存储JSONObject中的字段竟然不见了? JSONObject object=new JSONObject(); Map fields = new HashMap(); fields.put("1","1"); object.put("fields",fields); System.out.println(object.toString()); JSONObject newFields = object.getJSONObj…
今天我们来说一说rest framework 中的 版本 操作的详解 首先我们先回顾一下 rest framework的流程: 请求进来走view ,然后view调用视图的dispath函数 为了演示方便我们先来启一个项目: 在settings 中 INSTALLED_APPS 添加 rest_framework , 在view.py 中创建一个视图类 假使来个课程类吧: from rest_framework.views import APIView from rest_framework.r…
    kafakproducer概要(看源码前,最好能理解) 摘要 kafak 被设计用来作为一个统一的平台来处理庞大的数据的实时工具,在设计上有诸多变态的要求 它必须具有高吞吐量才能支持大量事件流,例如实时日志聚合. 它需要优雅地处理大量数据积压,以支持从脱机系统定期加载数据. 系统将必须处理低延迟传递,以处理更多传统的消息传递用例. 支持进行分区,分布式,实时处理,强大的容错能力. 下文主要对kafka client 客户端源码进行分析    kafka客户端 上图为kafka客户端发送消…