xerces解析xml文档默认会验证dtd,这个过程需要网络连通,而且可能非常耗时。同时使用xerces的包又是很多的,这个设计真是麻烦!
对于dom4j,可以这样解决:
SAXReader reader = new SAXReader();
reader.setValidation(false);
try
{
reader.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
}
catch (SAXException e)
{
// do nothing
}
对于javax.xml:
javax.xml.parsers.DocumentBuilderFactory documentBuilderFactory = javax.xml.parsers.DocumentBuilderFactory
.newInstance();
documentBuilderFactory.setValidating(false);
javax.xml.parsers.DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
documentBuilder.setEntityResolver(new EntityResolver() {
public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException
{
return new org.xml.sax.InputSource(new java.io.StringReader(""));
}
});
其他类似,设置自己的EntryResolver即可。
Continue reading xerces dtd解析验证问题
Servlet API historyServlet API version | Released | Platform | Important Changes |
---|
Servlet 3.0 | December 2009 | JavaEE 6, JavaSE 6 | Pluggability, Ease of development, Async Servlet, Security, File Uploading |
Servlet 2.5 Jsp2.1 | September 2005 | JavaEE 5, JavaSE 5 | Requires JavaSE 5, supports annotation |
Servlet 2.4 Jsp2.0 | November 2003 | J2EE 1.4, J2SE 1.3 | web.xml uses XML Schema |
Servlet 2.3 Jsp1.2 | August 2001 | J2EE 1.3, J2SE 1.2 | Addition of Filter |
Servlet 2.2 | August 1999 | J2EE 1.2, J2SE 1.2 | Becomes part of J2EE, introduced independent web applications in .war files |
Servlet 2.1 | November 1998 | Unspecified | First official specification, added RequestDispatcher , ServletContext |
Servlet 2.0 | | JDK 1.1 | Part of Java Servlet Development Kit 2.0 |
Servlet 1.0 | June 1997 | | |
更详细的见wiki:
http://en.wikipedia.org/wiki/Java_Servlet
http://en.wikipedia.org/wiki/JavaServer_Pages
Tomcat 5.5实现 Servlet2.4和Jsp2.0
Tomcat 6实现 Servlet2.5和Jsp2.1
Continue reading Servlet Api 和 JavaServerPage Version
串联系统:

可靠性=R1*R2*R3…Rn
失效率=λ1 + λ2 + λ3…λn
并联系统:

可靠性=1 – ((1-R1)*(1-R2)*(1-R3)…(1-Rn))
失效率= 1/((1/(1*λ1)) + (1/(2*λ2)) + (1/(3*λ3))…(1/(n*λn)))
Continue reading 可靠性与失效率
帕累托图(Pareto chart)是以意大利经济学家V.Pareto的名字而命名的。
帕累托图又叫排列图、主次图,是按照发生频率大小顺序绘制的直方图,表示有多少结果是由已确认类型或范畴的原因所造成。它是将出现的质量问题和质量改进项目按照重要程度依次排列而采用的一种图表。可以用来分析质量问题,确定产生质量问题的主要因素。

按等级排序的目的是指导如何采取纠正措施:项目班子应首先采取措施纠正造成最多数量缺陷的问题。从概念上说,帕累托图与帕累托法则一脉相承,该法则认为相对来说数量较少的原因往往造成绝大多数的问题或缺陷。
排列图用双直角坐标系表示,左边纵坐标表示频数[实际值],右边纵坐标表示频率[实际值占总的比率][两个值是对应的].分析线表示累积频率,横坐标表示影响质量的各项因素,按影响程度的大小(即出现频数多少)从左到右排列,通过对排列图的观察分析可以抓住影响质量的主要因素.
帕累托法则往往称为二八原理,即百分之八十的问题是百分之二十的原因所造成的。帕累托图在项目管理中主要用来找出产生大多数问题的关键原因,用来解决大多数问题。
在帕累托图中,不同类别的数据根据其频率降序排列的,并在同一张图中画出累积百分比图。帕累托图可以体现帕累托原则:数据的绝大部分存在于很少类别中,极少剩下的数据分散在大部分类别中。这两组经常被称为“至关重要的极少数”和“微不足道的大多数”。
帕累托图能区分“微不足道的大多数”和“至关重要的极少数”,从而方便人们关注于重要的类别。帕累托图是进行优化和改进的有效工具,尤其应用在质量检测方面。
Continue reading 帕累托图
鱼骨图使用步骤
(1)查找要解决的问题;
(2)把问题写在鱼骨的头上;
(3)召集同事共同讨论问题出现的可能原因,尽可能多地找出问题;
(4)把相同的问题分组,在鱼骨上标出;
(5)根据不同问题征求大家的意见,总结出正确的原因;
(6)拿出任何一个问题,研究为什么会产生这样的问题?
(7)针对问题的答案再问为什么?这样至少深入五个层次(连续问五个问题);
(8)当深入到第五个层次后,认为无法继续进行时,列出这些问题的原因,而后列出至少20个解决方法。
鱼骨图分析实例:

讲解(与上图不对应):
图中的“鱼头”表示需要解决的问题,即该炼油厂产品在市场中所占份额少。根据现场调查,可以把产生该炼油厂市场营销问题的原因,概括为5类。即人员、渠道、广告、竞争和其它。在每一类中包括若干造成这些原因的可能因素,如营销人员数量少、销售点少、缺少宣传策略、进口油广告攻势等。将5类原因及其相关因素分别以鱼骨分布态势展开,形成于骨分析图。
下一步的工作是找出产生问题的主要原因,为此可以根据现场调查的数据,计算出每种原因或相关因素在产生问题过程中所占的比重,以百分数表示。例如,通过计算发现,“营销人员数量少”,在产生问题过程中所占比重为35%,“广告宣传差”为18%, “小包装少”为25%,三者在产生问题过程中共占78%的比重,可以被认为是导致该炼油厂产品市场份额少的主要原因。如果我们
针对这三大因素提出改进方案,就可以解决整个问题的78%。该案例也反映了“20:80原则”,即根据经验规律,20%的原因往往产生80%的问题,如果由于条件限制,不能100%解决问题,只要抓住占全部原因20%,就能够取得80%解决问题的成效。
Continue reading 鱼骨图
教育多重要,有多少人实际知晓?强国之路,教育为本……
http://www.xingwu.net/zhuanye/zaoyu.htm
Continue reading 【链】遭遇美国教育
打开JConsole可看到CPU Usage这一项,但是它指的是JVM的使用CPU,MBean里面是没有提供这一项的,怎么得到?
使用如下代码:
>long nanoBefore = System.nanoTime();
long cpuBefore = osMBean.getProcessCpuTime();
Continue reading jconsole CPU Usage JmxJMX基于RMI,获得客户端ip的方法是和RMI的方法一样的:
public String getClientIp()
{
try
{
String clienthost = RemoteServer.getClientHost();
InetAddress ia = java.net.InetAddress.getByName(clienthost);
return ia.getHostAddress();
}
catch (Exception e)
{
Log.error(e);
return "Unknow Client";
}
}
Continue reading 怎样获得jmx调用客户端的IP,how to get client ip of jmx
我想从java启动tomcat5.5,代码如下:
Runtime.getRuntime().exec(new String[] { "D:/Program Files/Apache Software Foundation/Tomcat 5.5/bin/startup.bat" },
null, new File("D:/Program Files/Apache Software Foundation/Tomcat 5.5"));
老是启动不了,后来发现要这样:
>BufferedReader bufferedReader =
new BufferedReader(
new InputStreamReader(pid.getInputStream()), 1024);
Continue reading Tomcat 5.5 startup shutdown jmx问题ObjectName = Catalina:type=Host,host=localhost:
停止启动服务器
Catalina:j2eeType=WebModule,name=…
停止启动web程序
Catalina:type=Service,serviceName=Catalina
这个可以停止整个Tomcat,但是停止了这个MBean也就消失了,那就谈不上用它来启动了
Continue reading Tomcat JMX操作
Pagination