`
文章列表
==============================首先讲解DOM解析============================ 官方搞了个标准DOM,但是民间的人感觉这种方式比较占内存,所以自己又整了一套SAX。也不是说民间搞的就比官方的好,这两种方式各有优势,用的都比较多。他们对XML的解析方式是完全不一样的。 DOM主要是基于一种树形的模型,XML文档本身就是一棵树形,DOM也是按照这种树形结构来处理的,它和我们的XML文档是非常吻合的,完全一致的,DOM的解析方式是这样的:首先读取XML文档,然后在内存里面形成一棵树形的结构,这个结构就反映出了XML文档的结构,接下来就开始遍 ...
下面讲解简单工厂模式: 意图:简单工厂模式是类的创建模式,又叫做静态工厂方法(Static Factory Method)模式。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。通常它根据比变量的不同返回不同的类的实例。 简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建出哪一个产品类的实例。 简单工厂模式(Simple Factory)模式的构成: 1、工厂类(Creator)角色:担任这个角色的是简单工厂模式的核心,含有与应用紧密相关的商业逻辑。工厂类在客户端的直接调用下创建产品对戏那个,它往往由一个具体类实现。 2、抽象产品(Product)角色:担任这个角 ...
下面讲解XML Schema【非常重要】: 我们自己写的XML文件需要用Schema来验证有效性,而Schema恰恰也是一个XML文件,那么Schema这个XML文件的有效性用什么来验证呢?答案是用DTD来验证。用内置的XMLSchema.dtd来验证Schema文件(一个XML文件) ...
"java xml"博客文章相关附件图片
<!-- 这里的xml是处理的指令名称。standalone="yes"表示这个xml文档是一个单独的文档,不涉及到其他的,没有对它验证的这样一个文档存在,也就是说我的这个xml文档现在不需要dtd进行验证,只要语法正确就没问题。(对于有dtd验证存在的文档,不仅语法上要正确,而且语义结构上也要符合dtd的要求,否则这个xml就有问题。) --> <!-- 这里面的version和standalone="yes"的值可以用双引号括起来,也可以用单引号括起来,都可以,但是单引号和双引号不能混合使用,要用哪种就都用哪种 --> &l ...
package com.shengshiyuan.network; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; import java.net.URL; import java.net.URLConnection; public class UrlConnection1 { public static void main(String[] args) throws Exception { URL url = new URL(&quo ...
当一个类实现了Serializable接口时,表明该类可以被序列化,这个时候Eclipse会要求你为该类定义一个字段,该字段名字为serialVersionUID,类型为long,提示信息如下: The serializable clss Student4 does not declare a static final serialVersionUID field of type long 有两种方式可以解决这个问题(你可以随便写一个,在Eclipse中它替你生成一个,有两种生成方式): 1、一个是默认的1L,比如:private static final long serialVersio ...
程序本来是静止的,静止在磁盘上的,当它运行之后,当它运行之后,它就处在一个进程当中,而一个进程里面可以包含着多个线程,多个线程可以同时的运行,所谓多线程就是说多个这样的线程可以同时的去运行。就比如说你 ...
首先讲解下sql里面的dual虚拟表: 在oracle中,我们有时候会需要判断一个字符串里边是否包含有某一个串;首先,oracle为我们提供了instr这个函数:   instr( string1, string2 [, start_position [, nth_appearance ] ] )   参数分析:   str ...
• 将对象转换为字节流保存起来,并在以后还原这个对象,这种机制叫做对象序列化。 【比如内存里面有Person这样一个对象,这个对象已经new出来了,接下来我把这个对象保存到文件里面,因为内存里面的东西一旦java虚拟机关闭了就都没有了,所以保存到文件里面,保存到文件之后,等到下一次java虚拟机再次起来之后,我再把这个Person对象从文件里面读取回来,再加载到内存中。这就是序列化】 • 将一个对象保存到永久存储设备上称为持久化。 • 一个对象要想能够实现序列化,必须实现Serializable接口或Externalizable接口。 一看到一个类实现了Serializable接口,编译器 ...
JAVA里面用到的最重要的一个设计模式:“装饰模式(Decorator)”。几乎IO整个体系里面都用到这个模式。 • 装饰模式又名包装(Wrapper)模式。 • 装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。【例如继承是用来扩展类的功能的,父类定义了一些方法,子类继承这些方法,那么子类的功能就扩展了。而这个模式是用来扩展对象的功能的,对象之间互相组合就能完成不同的功能。】 • 装饰模式以对客户透明的方式动态的给一个对象附加上更多的责任。换言之,客户端并不会觉得对象在装饰前和装饰后有什么不同。 • 装饰模式可以在不创造更多子类的情况下,将对象的功能加以扩展。 • 装饰模 ...
首先讲到的是File类,首先查看博客文章“Java IO File类总结” 流类: 流的概念: ---java程序通过流来完成输入/输出。流是生产或消费信息的抽象。流通过Java的输入/输出系统与物理设备链接。尽管与他们链接的物理设备不尽相同,所有流的行为具有同样的方式。这样,相同的输入/输出类和方法适用于所有类型的外部设备。这意味着一个输入流能够抽象多种不同类型的输入:从磁盘文件,从键盘或从网络套接字。同样,一个输出流可以输出到控制台,磁盘文件或相连的网络。流是处理输入/输出的一个洁净的方法,例如它不需要代码理解键盘和网络的不同。Java中流的实现是在java.io包定义的类层次结构内部的。 ...
递归(Recursion):就是方法调用自身。对于递归来说,一定有一个出口,让递归结束,只有这样才能保证不出现死循环。 递归的代码很容易出错,很难调试。 下面是一个简单的递归实例: package com.shengshiyuan.recursion; public class Test1 { // 循环方式计算阶乘,又叫做迭代的方式(普通方式) public int compute(int number) { int result = 1; for (int i = number; i > 0; i--) { result *= i; ...
对程序语言设计者来说,设计一个令人满意的I/O(输入输出)系统,是件极艰巨的任务。 File类: ---一个File类的对象,表示了磁盘上的文件或目录(把这两类统称了,java会提供一种方式来区分我这个File到底是一个文件还是一 ...
内部类: 将相关的类组织在一起,降低了命名空间的混乱,它是定义在小于一个包的范围内。 内部类可以定义在另外一个类里面,可以定义在一个方法里面,甚至可以作为一个表达式的一部分。 Java里面共有四种内部类: 1、 ...
Global site tag (gtag.js) - Google Analytics