网络通信

网络通信: 套接字通信
网络传输协议
TCP 面向连接的 数据流 数据传输安全 发送和接收包的顺序一样
UDP 面向不连接 数据报 数据传输不安全 可能发生丢包 接收和发送的顺序可能不一样

TCP:
ServerSocket port 端口 0-65536
Socket accept()
Socket host port
InputStream() 接收消息
OutputStream() 发送消息

UDP:
DatagramSocket
receive(DatagramPacket p)
send(DatagramPacket p)
DatagramPacket
65536-8

InetAddress
int port

网络通信 服务器 多线程

XML 可扩展标记语言
存储和传输数据
元素 节点
标签 属性 文本内容
有且只有一个根元素
<![CDATA[文本内容]]>
< <
> >
& &
’ ’
" "

HTML 显示数据

XML解析:
SAX Simple API for XML

DOM Document Object Model

第三方jar
dom4j

SAXReader 能够把xml文件加载成 Document对象
SAXReader reader = new SAXReader();
Document doc = reader.read("");
Element rootEle = doc.getRootElement();
String getName();
String getTextTrim();
String getText();
Attribute attribute(int index)
Attribute attribute(String name)
List attributes();
Element element(String name)
List elements();

DocumentHelper
static Document createDocument();
Element addElement(String name);
Element	addElement(String name,String text)
Element addAttribute(string name,string value)
Element addText(string text)

XMLWriter
XMLWriter writer = new XMLWriter();
writer.setOutputStream(OutputStream os);
writer.write(Document doc);

遍历Document
查找

Document inherit Node
查找节点(元素)
public List selectNodes(String xpathExpression)

XPATH 表达式 正则表达式
用路径表达式来在xml文档中进行导航(搜索)
用路径来表示内容在xml文档中的位置
路径:
绝对路径
/ 表示的是文件名
相对路径
. 当前节点
… 父节点 上一级节点

	斜杠(/)作为路径内部的分割符
	
	/根节点/

	/nodename   节点名称

/ 代表文件下查找 
// 表示选择任意位置的所有节点
@ 表示选择某个属性

通配符:
* 表示匹配任何元素节点
@* 表示匹配任何属性值
node() 表示匹配任何类型的节点

选择:
[n] 匹配第n个
[last()]
[position() < n]
[position() > n]
@id=‘1’
nodename[@属性名=‘值’]

//nodename   所有为nodename的节点都匹配出来 
/x/x/*       某个节点下所有的节点

解析(读取) 构造Document 写入到文件
Document 遍历 查找

Properties extends HashTable
key – value
void load(InputStream inStream)
从输入流中读取属性列表(键和元素对)。
void load(Reader reader)
按简单的面向行的格式从输入字符流中读取属性列表(键和元素对)。
void loadFromXML(InputStream in)
将指定输入流中由 XML 文档所表示的所有属性加载到此属性表中。

String getProperty(String key) 通过key索引value 如果key不存在返回null
String getProperty(String key, String defaultValue)
Set stringPropertyNames() 取得所有key的集合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值