分类‘编程代码’

dojo.io.iframe异步发送form数据包

今天在使用dojo进行异步请求动作的同时,加入了一个文件上传,由于不想引入struts等框架,采用了古老的jspsmartupload,结果用xhrPost异步提交时无论如何都没有反应,鉴于公司限网,只好回家查资料了。搜索一番发现dojo中想异步上传数据包,有一个专门的方法,就是使用dojo.io.iframe。

这里,顺带提一下dojo的XHR,XHR框架是dojo对ajax支持的一组方法,允许想服务器端发出get、post、put、delete请求,这些方法包括:xhrGet、xhrPost、xhrPut、xhrDelete。具体在前面转载的文章《用Dojo实现XHR、跨域、及其他Ajax请求》中描述的很清楚,有需要的可以去了解。
这里需要注意,所有这些函数都遵守相同的语法:接受一个属性配置对象作为参数。在这些对象中您可以定义您想要发出的Ajax请求的各个方面。再一次说明,这些选项在所有XHR函数中都是一样的。 查看更多...

Dojo基本DOM操作函数记录

最近接触dojo,发现dojo很强大了,但没有系统学习过dojo,用起来还是很吃力,譬如不知道基础的dom操作等,都得找文档临时学习。总体来说,dojo目前的写法类似于extjs,但又不局限于extjs之类的框架。下面分享一下基础的dom操作函数及说明。

基本的DOM操作只是用到了dojo的核心文件.使用dojo.query将返回一个匹配到的节点数组dojo.Nodelist, 这个数组内建了一些常用的方法. 可以操作DOM

使用dojo的方法:

dojo.ready(function(){
	//TODO
});

TODO部分实现你想要的dojo操作。
查看更多...

用Dojo实现XHR、跨域、及其他Ajax请求

工作之余,收集了dojo的入门知识,以便以后查用。下面是用Dojo实现XHR、跨域、及其他Ajax请求的介绍,希望有用。

在任何浏览器上方便地实现Ajax请求是每一个Ajax框架的初衷。Dojo在这方面无疑提供了非常丰富的支持。除了XMLHttpRequest之外,动态script、iframe、RPC也应有尽有,并且接口统一,使用方便,大多数情况下都只需要一句话就能达到目的,从而免除重复造轮子的麻烦。而且,Dojo一贯追求的概念完整性也在这里有所体现,换句话说,在使用Dojo的Ajax工具的过程中不会感到任何的不自然,相反更容易有触类旁通的感觉,因为API的模式是统一的,而且这里涉及到的某些概念(如Deferred对象)也贯穿在整个Dojo之中。

Dojo的XHR函数

Dojo的XMLHttpRequest函数就叫dojo.xhr,除了把自己取名美元符号之外,这好像是最直接的办法了。它定义在Dojo基本库里,所以不需要额外的require就能使用。它可以实现任何同域内的http请求。不过更常用的是dojo.xhrGet和dojo.xhrPost,它们只不过是对dojo.xhr函数的简单封装;当然根据REST风格,还有dojo.xhrPut和dojo.xhrDelete。 查看更多...

JAVA数据存储及内存管理问题总结

1.java是如何管理内存的

java的内存管理就是对象的分配和释放问题。(其中包括两部分)

分配:内存的分配是由程序完成的,程序员需要通过关键字new为每个对象申请内存空间(基本类型除外),所有的对象都在堆(Heap)中分配空间。
释放:对象的释放是由垃圾回收机制决定和执行的,这样做确实简化了程序员的工作。但同时,它也加重了JVM的工作。因为,GC为了能够正确释放对象,GC必须监控每一个对象的运行状态,包括对象的申请、引用、被引用、赋值等,GC都需要进行监控。

2.什么叫java的内存泄露

在java中,内存泄漏就是存在一些被分配的对象,这些对象有下面两个特点,首先,这些对象是可达的,即在有向图中,存在通路可以与其相连(也就是说仍存在该内存对象的引用) 查看更多...

BIRT报表的数据钻取功能简述

很多情况下,J2EE的应用需要一个配套搭建的报表来显示统计信息,BIRT就是一个很不错的免费报表系统,它的强大这里不再赘述了,这里仅仅为了记录一下钻取的基本操作。BIRT的钻取说白了就是网页上的超链接,点击链接会出现另一个页面而已,而需要注意的就是它可以以当前报表上的数据为查询条件进行查询,并在下一个页面中进行显示。

以告警种类历史趋势为例说明其步骤分为如下两步:

一、准备两张报表,当然两个报表某些地方是需要有关联关系的,你随便弄两张好不好使我不管了。
我准备了两张报表,1是告警种类的统计信息,其参数为别为起始时间与结束时间。2是统计信息的明细信息,其参数为超时间、结束时间及主机名称。两个报表是通过报表1的主机名及输入报表的起止时间为关联进行关联的。

二、为两张报表建立关联关系。 查看更多...

Java GUI编程中有关swing组件的阻塞

Swing API的设计目标是强大、灵活和易用。特别地,我们希望能让程序员们方便地建立新的Swing组件,不论是从头开始还是通过扩展我们所提供的一些组件。
出于这个目的,我们不要求Swing组件支持多线程访问。相反,我们向组件发送请求并在单一线程中执行请求。

单线程规则:Swing线程在同一时刻仅能被一个线程所访问。一般来说,这个线程是事件派发线程(event-dispatching thread)。
规则的例外:有些操作保证是线程安全的。
事件分发:如果你需要从事件处理(event-handling)或绘制代码以外的地方访问UI,那么你可以使用SwingUtilities类的invokeLater()或invokeAndWait()方法。
创建线程:如果你需要创建一个线程--比如用来处理一些耗费大量计算能力或受I/O能力限制的工作--你可以使用一个线程工具类如SwingWorker或Timer。 查看更多...

Java多线程中线程阻塞机制

为了解决对共享存储区的访问冲突,Java 引入了同步机制,现在让我们来考察多个线程对共享资源的访问,显然同步机制已经不够了,因为在任意时刻所要求的资源不一定已经准备好了被访问,反过来,同一时刻准备好了的资源也可能不止一个。为了解决这种情况下的访问控制问题,Java 引入了对阻塞机制的支持。

阻塞指的是暂停一个线程的执行以等待某个条件发生(如某资源就绪),学过操作系统的同学对它一定已经很熟悉了。Java 提供了大量方法来支持阻塞,下面让我们逐一分析。

1. sleep() 方法:sleep() 允许 指定以毫秒为单位的一段时间作为参数,它使得线程在指定的时间内进入阻塞状态,不能得到CPU 时间,指定的时间一过,线程重新进入可执行状态。 查看更多...

GWT框架下进行Ajax开发基础实例

从事Web开发的人员一般都接触过,在我看来,Ajax的立意很好,我比较感兴趣的就是Ajax在某些应用场合可以有效降低服务器负载,可以局部刷新,所以可以说Javascript+XMLhttp是Web开发中不可或缺的好东西。Ajax虽好,但它这要求开发团队能熟练使用Javascript,这是一个障碍。目前状况是,团队的成员明显对深入学习Javascript的意愿不高。因此,各类简化了的Javascript框架出现了。

众所周知,Google产品设计面非常广,这里要介绍的就是Google发布的面向Java开发人员的Ajax快速开发工具——GWT(Google Web Toolkit),Ajax技术是当前开发Web应用的非常热门的技术,也是Web 2.0的一个重要的组成部分。然而如果用传统的方式Javascript进行Ajax开发的话,就会使得应用程序非常难以进行调试,从而降低了生产效率。

Google最近推出的GWT有望为我们解决这个难题,GWT是一个开发Ajax应用的框架,它使程序员用Java同时开发客户端和服务器端的代码。 查看更多...

JSON基础知识与Javascript解析方式分析

JSON即JavaScript Object Notation,是一种轻量级的数据交换格式,易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。

JSON建构于两种结构:

1、“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 查看更多...

JQuery Mobile框架使用技巧几则

个人认为,JQuery Mobile是一个非常好的框架,虽然我暂时没接触过Sencha Touch,但据说学习成本要比JQuery Mobile大很多,从目前Web应用UI框架选择少的情况来看,JQuery Mobile是最好的选择了。

JQuery本身就已经是一个成熟的框架了,JQuery Mobile作为它的附属品,继承了write less,do more的传统。但是作为一个新兴起的项目,毛病也是有不少。以下是一些常见问题的解决小技巧,希望做移动Web应用的朋友能用得着。

1.页面跳转时,当前页会先回到顶部,再跳转到目标页
相信在JQuery Mobile 1.1.0 版本出来之前,每个人都会遇到的问题。 查看更多...