- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
如何生成xml文件
描述一个用户实体:
Id,username,password,gender,birth,address
Xml 技术:
users
user
id/id
username/username
password/password
gender/gender
birth/birth
address/address
/user
/users
读取xml 数据:
找到文件File
打开文件InputStream
把InputStream 变成树状的东西DOM
找树根users
找树枝user
找树叶id,username 对应的值(标签体)
写xml 数据
1. 得到一棵树:从内存中创建(空树)
2. 往树上挂树枝。
3. 保存树在硬盘上。
Api:
SAXReader机器,用于解析xml 文档
Document 树 reader.read(InputStream is)
Element树根,树枝 document.getRootElement();
elements 方法得到所有子树枝
element(String)得到指定名称的子树枝
getTextTrim()得到元素的值(树叶)
输出格式:
XMLWriter 以FileWriter
OutputFormat.createPrettyPrint
Indent
解决中文问题:用OutputStream 替换Writer
Add
Remove(Element element)
应用:
准备:引入java 类,用来封装user 数据,或者与xml 的user 标签建立映射关系。
DAO:Data Access Object操纵数据的模块
Interface:制定规范,标准
DocumentManager:
统一管理Document 对象
1. 读取所有的user 信息
2. 读取指定id 号的用户的信息。
Java object
Dom 内存树 读
users 取
树 Id:100
user
Username:wanggang
id100/id
usernamewanggang/username
…..
/user
/users
SAXReader.read :构
建树
User.xml(文本文件)
3. 读取count 属性,用于获取到用户数量。
Attribute
4. 对读取元素加以排序
接口:Comparator制定排序标准,compare
第一:转成实际上进行比较对象的类型
第二:取出真正排序属性值。
-1升序,+1 降序
被排序的对象可以是一个List ,直接从查询结果得到。
5. 判断指定id 值是否存在。
6. 插入一个用户到xml 中去。
分析:
找到树根
根据id 判断用户是否存在
如果存在,抛出异常,退出程序。
构建树枝(根据用户属性值)
挂树枝到树根
修改树根属性count
回写树到硬盘
引入UserExistsException
7. 主键采用自增方式。(得到最大值加1)
得到树根
得到user 树枝
得到所有id,找到最大值
Id 加1
8. 增加一个用户,主键是自增长。
得到树根,产生主键,设置用户id 值
得到树根,
文档评论(0)