process: 进程
thread: 线程web
线程: 一般使用内部类来建立线程
1. extends Thread 中重写run()方法,实例化thread并调用start();
2. implements Runnable 重写run()方法,用thread 实例化线程并传入runnable,而后start();安全
并发原理:
* 多个线程同时运行只是咱们感官上的一种表现。事实上,线程是并发运行的。
OS将时间划分为不少时间片断,尽量均匀的分配给每个线程,获取时间片断的线程被CPU运行,
而其余线程所有等待。因此微观上走走停停,宏观上都在运行。这种现象叫并发,但不是绝对意义上的“同时发生”。网络
使用ExecutorService实现线程池
* 线程池两个主要做用:
- 控制线程数量
- 重用线程多线程
BlockingQueue:双缓冲队列
* 多线程并发时,若须要使用队列,咱们可使用Queue,可是要解决一个问题就是同步,
但同步操做会下降并发对Queue操做的效率。
* BlockingQueue内部使用两条队列,可容许两个线程同时向队列一个作存储,一个作取出操做。
在保证并发安全的同时提升了队列的存取效率。并发
Socket:一般称做“套接字”
* 用于描述IP地址和端口,是一个通讯链的句柄。
在Internet上的主机通常运行了多个服务软件,同时提供几种服务。
每种服务都打开一个Socket,并绑定到一个端口上,不一样的端口对应于不一样的服务。
* 应用程序一般经过Socket向网络发出请求或者应答网络请求。
Socket是创建网络链接时使用的。在链接成功时,应用程序两端都会产生一个Socket实例,
操做这个实例,完成所需的会话。
* 经过Socket获取输入流和输出流,这两个方法是使用Socket通信的关键方法。
* 使用完毕后,要关闭Socket以释放系统资源。 void close();函数
XML用途:
* XML 可扩展标记语言(EXtensible Markup Language)
- 是独立于软件和硬件的信息传输工具
* XML应用与web开发的许多方面,经常使用于简化数据的存储和共享。
* XML简化数据共享/简化数据传输/简化平台的变动。工具
XML元素和属性
* XML文档包含XML元素
* XML元素指的是从(且包括)开始标签直到(且包括)结束标签的部分。
元素可包含其余元素/文本或者二者的混合物。元素也能够拥有属性。
* XML对大小写敏感,这一点不像HTML。
- 在XML中<Letter>标记和<letter>标记是不同的。
* CDATA段:<![CDATA[文本内容]]> 特殊标签中的实体引用都被忽略,全部内容被当成一整块文本数据对待。.net
XML解析方式 :Dom4J
* SAX(simple API for XML)是一种XML解析的替代方法。
相比于DOM,SAX是一种速度更快更有效的方法。
* DOM(Document Object Model 即文档对象模型) 经常使用。线程
XPath
* XPath是一门在XML文档中查找信息的语言。
XPath可用来在XML文档中对元素和属性进行遍历。
* XPath使用路径表达式在XML文档中进行导航
* XPath包含一个标准函数库
* XPath是XSLT中的主要元素?
* XPath是一个W3C标准对象
路径表达式:
* 相对路径和绝对路径。
- "." 表示当前节点
- ".."表示当前节点的父节点
* 举例
- /bookstore :选取根节点bookstore,绝对路径写法。
- bookstore/book :选取全部书店下面的书元素,相对路径
- //book :选择全部book子元素,无论在文档的哪一个位置
- bookstore//book :bookstore后代中的book元素
- //@lang :选取全部名为lang的属性
* 谓语条件:[] 对节点进行进一步筛选
* 通配符:
- //* :选择文档中的全部元素节点
- /*/* :表示选择全部第二层的元素节点
- /bookstore/* :表示选择bookstore的全部元素子节点
- //title[@*] :表示选择全部带有属性的title元素