原文地址:http://www.java2000.net/p9751JDK地址:http://www.java2000.net/doc/jdk6_cn/java/lang/ProcessBuilder.html一、JDK中的介绍摘录此类用于创建操作系统进程。每个ProcessBuilder实例管理一个进程属性集。start()方法利用这些属性创建一个新的Process实例。start()方法可以从同一实例重复调用,以利用相同的或相关的属性创建新的子进程。每个进程生成器管理这些进程属性:*命令是一个字符串列... 1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何修正。2、命令:必须熟悉JDK带的一些常用命令及其常用选项,命令至少需要熟悉:appletviewer、HtmlConverter、jar、java、javac、javadoc、javap、javaw、native2ascii、serialver,如果这些命令你没有全部使用过,那么你对java实际上还很不了解。3、工具:必须至少熟练使用一种IDE的开发工具,例如Eclipse、Netbeans、JBuilder、Jdeveloper、IDEA、JC... 在进行多线程编程中,比较重要也是比较困难的一个操作就是如何获取线程中的信息。大多数人会采取比较常见的一种方法就是将线程中要返回的结果存储在一个字段中,然后再提供一个获取方法将这个字段的内容返回给该方法的调用者。如以下的ReturnThreadInfo类: packagethreadtest1; /** * *@authorshimingxiang */ publicclassReturnThreadInfoextends&... 在web开发时,有的系统要求同一个用户在同一时间只能登录一次,也就是如果一个用户已经登录了,在退出之前如果再次登录的话需要报错。常见的处理方法是,在用户登录时,判断此用户是否已经在Application中存在,如果存在就报错,不存在的话就加到Application中(Application是所有Session共有的,整个web应用程序唯一的一个对象):stringstrUserId=txtUser.Text;ArrayListlist=Application.Get("GLOBAL_USER_LIST&qu... Java做的系统给人的印象是什么?占内存!说道这句话就会有N多人站出来为java辩护,并举出一堆的性能测试报告来证明这一点。 其实从理论上来讲java做的系统并不比其他语言开发出来的系统更占用内存,那么为什么却有这么N多理由来证明它确实占内存呢?两个字,陋习。 (1)别用newBoolean()。 在很多场景中Boolean类型是必须的,比如JDBC中boolean类型的set与get都是通过Boolean封装传递的,大部分ORM也是用Boolean来封装boolean类型的,比如: ps.setBoolean("isClosed",new&nbs... Set和数学中的集合是同一个概念,就是没有重复元素的集合。 这篇文章主要论述了Set是如何实现"没有重复元素"(noduplicateelements)的,以及阐述了什么是“重复”(duplicate),是相同的地址空间?是equals的返回值为true?是compareTo的返回值为0?还是有相同的hashCode?本文还给出了在什么情况下使用什么样的Set的建议。 注:本文不涉及范型。 1、树形结构: publicinterfaceSetextendsCollection{... 在Java中,匿名类(Anonymousinnerclasses)多用来处理事件(eventhandle)。但其实,它们对于debug也很有帮助。本文将介绍如何利用匿名类来简化你的debug。 我们该如何调试那些非自己源码的方法调用呢?比方说,对Jbutton.setEnable()的调用。Java提供的匿名类,可以很好的解决这个问题。 通常,当我们继承一个类时,我们可以通过提供新的方法来覆盖(override)该类中现有的方法: publicclassMyButtonextendsJButton ... 来源:jdong-博客园 前一段时间做一个网站项目,使用win2003+.net2.0开发;在学习了一些.net的相关知识后,并考虑到此项目需要多人合作,以及架构清晰、URL重写等优点,决定用MVC方式开发。但微软的asp.netMVC框架据说要下半年才出正式版,而且还需要.net3.5,其他的MVC框架又不熟悉,估计也需要一段时间学习。由于开发时间比较紧,我们开发小组中也没有一个对asp.net及asp.netMVC框架非常精通的人,所以又想转回使用传统的asp.net编程方式开发。 在两难之际,我想也许可以在项目需求出来... 很多初学者在用Java布局器自动布局画界面时,经常遇见不知道如何定义区域大小或按钮之间的距离等问题。我写过一篇《实现JAVA手动布局中各个组件能随窗口变化的方法》的文章,有读者反映算坐标不好算,问能不能用布局器实现文章中的界面。其实自动布局也可以解决定义区域大小或按钮之间的距离等问题,只是没有手动布局那么灵活。下面我就举一个例子。 首先,建一个frame文件(Application应用程序),在Design中将this中的layout设置为BorderLayout。 第二,在组件盘内点选SwingContainer页签,选取Jpanel图标,在this中上方拖拽一块区域,... 记忆是衍生自Lisp,Python和Perl等过程性语言的一种设计模式,它可以对前次的计算结果进行记忆。一个实现了记忆功能的函数,带有显式的cache,所以,已经计算过的结果就能直接从cache中获得,而不用每次都进行计算。 记忆能显著的提升大计算量代码的效率。而且是一种可重用的方案。 本文阐述了在Java中使用这一模式的方法,并提供了一个可以提供上述功能的“记忆类”:Foofoo=(Foo)Memoizer.memoize(newFooImpl()); 这里,Foo是一个接口,它含有的方法是需要记忆的。Foo... Java中的return语句总是和方法有密切关系,return语句总是用在方法中,有两个作用,一个是返回方法指定类型的值(这个值总是确定的),一个是结束方法的执行(仅仅一个return语句)。 在return语句的各类文章中,大多仅仅介绍了return语句用于有返回值(非void返回值)的方法中。而很少或没有介绍return语句在vodi返回值方法中的运用。 return语句用在非void返回值类型的方法中,不但能返回基本类型,还可以返回(包括用户自定义类的)对象。 下面通过一个简单例子说明一下: /** *CreatedbyIn... /* 网页中的表单使用POST方法提交时,数据内容的类型是application/x-www-form-urlencoded,这种类型会: 1.字符"a"-"z","A"-"Z","0"-"9",".","-","*",和"_"都不会被编码; 2.将空格转换为加号(+); 3.将非文本内容转换成"%xy"的形式,xy... 讲座内容:.NET从2002年推出至今已经走过了6个年头,在2007年年底微软公司陆续对开发人员开放了部分.NETFramework的源代码以及调试所需要的符号文件。这些资源的推出,对于我们静态分析和动态调试.NETFramework源代码,理解.NET的运作机制提供了很大的帮助。本系列课程将和大家一起分析.NETFramework一些主要类库的源代码,对其算法设计,底层运作机制进行一一剖析,通过这些分析使得我们开发者对于.NETFramework拥有更加深入的了解,帮助我们设计出更加优秀的.NET应用程序。[video]htt... 讲座内容:ADO.NET连接方式进行数据访问,是指在不断开数据源连接的情况下,进行数据的读取与修改,它在一些需要实时操作的系统中非常重要。在本次课程中,我们将介绍如何在ADO.NET的连接环境下,如何进行数据的访问。[video]http://vhead.blog.sina.com.cn/player/outer_player.swf?auto=1&vid=14745010&uid=1400161487[/video] 讲座内容:在我们日常的应用开发过程中,数据访问是必不可少的一个组件,它在我们的系统中也占据了越来越重要的位置。在本系列课程中,我们将总结ADO.NET中各种数据访问技术,并将一一详细解读如何使用这些技术来进行数据访问。[video]http://vhead.blog.sina.com.cn/player/outer_player.swf?auto=1&vid=14744994&uid=1400161487[/video] 该控件有两个基本的类组成:一个form(会实际显示出来的部分).一个包含所有可在form中包含的属性的类.类包含两个timers,一个用来控制渐隐渐出的动画效果,另一个可配置为定义弹出窗口显示多久.下面是一个演示:fPopup.Size=SizefPopup.Opacity=0fPopup.Location=_NewPoint(Screen.PrimaryScreen.WorkingArea.Rig... 1什么是图片盗链让我们先分析一般的浏览现象,其中最重要的一点就是一个完整的页面并不是一次全部传送到客户端的.如果你请求的是一个带有许多图片和其它信息的页面,那么最先的一个Http请求被传送回来的是这个页面的文本,然后通过客户端的浏览器对这段文本的解释执行,发现其中还有图片,那么客户端的浏览器会再发送一条Http请求,当这个请求被处理后那么这个图片文件会被传送到客户端,然后浏览器回将图片安放到页面的正确位置,就这样一个完整的页面也许要经过发送多条Http请求才能够被完整的显示.基于这样的机制,就会产生一个问题,那就是盗链问题:就是一个网站中如... 尽早缓存;经常缓存您应该在应用程序的每一层都实现缓存。向数据层、业务逻辑层、UI或输出层添加缓存支持。内存现在非常便宜—因此,通过以智能的方式在整个应用程序中实现缓存,可以获得很大的性能提高。缓存可以掩盖许多过失缓存是一种无需大量时间和分析就可以获得“足够良好的”性能的方法。 这里再次强调,内存现在非常便宜,因此,如果您能通过将输出缓存30秒,而不是花上一整天甚至一周的时间尝试优化代码或数据库就可以获得所需的性能,您肯定会选择缓存解决方案(假设可以接受30秒的旧数据)。缓存正是那... ASP.NET弹出窗口控件,是MSNMessenger提醒(alert)的网页版,通过定义颜色风格可以修改图形的外观.支持拖放操作.一个很重要的特性是支持绝大多数浏览器.在最新版本的Mozilla,IE和Opera下测试通过,在不支持filter的浏览器中UI会有些差异.控件的很多属性可直接使用HTML代码,以实现图片等丰富的表现形式.ASP.NET弹出窗口控件PopupWindow,可用于通知用户重要的信息,比如在webemail客户端通知用户新消息/信件. ... 利用网上下载的这段代码,成功实现了守护进程,原来守护进程是很简单的事情。 在main函数中执行 init_daemon();//初始化为Daemon 就可以把进程变成守护进程 [code=c]#include#include#include#include#includevoidinit_daemon(void){intpid;inti;if(pid=fork())exit(0);//是父进程,结束父进程elseif(pid<0)exit(1);//fork失败,退出//是第一子进程,后台继续执行setsid();...