当前位置: 首页 > news >正文

揭阳做网站公司网站建设开发维护工作

揭阳做网站,公司网站建设开发维护工作,做网站销售好不好,企业网站用vps还是虚拟主机一、介绍 1 官方文档 地址: https://www.w3school.com.cn/xml/index.asp 2 为什么需要 XML 需求 1 : 两个程序间进行数据通信需求 2 : 给一台服务器#xff0c;做一个配置文件#xff0c;当服务器程序启动时#xff0c;去读取它应当监听的端口号、还有连接数据库的用户名…一、介绍 1 官方文档 地址: https://www.w3school.com.cn/xml/index.asp 2 为什么需要 XML 需求 1 : 两个程序间进行数据通信需求 2 : 给一台服务器做一个配置文件当服务器程序启动时去读取它应当监听的端口号、还有连接数据库的用户名和密码 spring 中的 ico 配置文件,beans.xml mybatis XXXMapper.xml tomcat server.xml web.xml maven pom.xml能存储复杂的数据关系 3 XML 技术用于解决什么问题  4 XML 快速入门  4.1 需求分析/图解 需求: 使用 idea 创建 students.xml 存储多个学生信息 4.2 完成步骤  4.2.1 步骤 1  4.2.2 步骤 2  4.2.3 步骤 3  4.2.4 创建 xml 步骤 二、XML语法  1 一个 XML 文件分为如下几部分内容 2 文档声明  3 元素  ?xml version1.0 encodingUTF-8 ? !-- 解读 1.每个 XML 文档必须有且只有一个根元素。 2.根元素是一个完全包括文档中其他所有元素的元素。 3.根元素的起始标记要放在所有其他元素的起始标记之前。 4.根元素的结束标记要放在所有其他元素的结束标记之后 5.XML 元素指 XML 文件中出现的标签一个标签分为开始标签和结束标签一 个标签有如下几种书写形式 包含标签体awww.sohu.cn/a 不含标签体的a/a, 简写为a/ 6.一个标签中也可以嵌套若干子标签。但所有标签必须合理的嵌套绝对不允许 交叉嵌套 7. 叫法 student 元素节点标签 -- studentsstudent id100namejack/nameage10/agegender男/gender/studentstudent id200namemary/nameage18/agegender女/gender/studentschool清华大学/schoolcity/ /students XML 元素指 XML 文件中出现的标签一个标签分为开始标签和结束标签一个标签有如 下几种书写形式例如 包含标签体awww.sohu.cn/a 不含标签体的a/a, 简写为a/ 一个标签中也可以嵌套若干子标签。但所有标签必须合理的嵌套绝对不允许交叉嵌套 例如awelcome to bwww.sohu.org/a/b 在很多时候说 标签、元素、节点是相同的意思  XML 元素命名规则 区分大小写例如P和p是两个不同的标记。 不能以数字开头。 不能包含空格。 名称中间不能包含冒号:。 如果标签单词需要间隔建议使用下划线 比如 book_titlehello/book_title 4 属性 4.1. 属性介绍 4.2 属性注意事项 属性值用双引号或单引号分隔如果属性值中有用分隔有用分隔一个元素可以有多个属性它的基本格式为元素名 属性名属性值特定的属性名称在同一个元素标记中只能出现一次属性值不能包括 字符 5 注释 !--这是一个注释- - 注释内容中不要出现- - 不要把注释放在标记中间错误写法 Name !--the name--TOM/Name 注释不能嵌套可以在除标记以外的任何地方放注释 6 CDATA 节!  有些内容不想让解析引擎执行而是当作原始内容处理(即当做普通文本)可以使用 CDATA 包括起来CDATA 节中的所有字符都会被当作简单文本而不是 XML 标记。 语法         ![CDATA[                 这里可以把你输入的字符原样显示不会解析 xml         ]] 可以输入任意字符除]]外  不能嵌套 ?xml version1.0 encodingUTF-8 ? !-- 解读 ![CDATA[ 这里可以把你输入的字符原样显示不会解析 xml ]] -- studentsstudent id100namejack/nameage10/agegender男/gendercode![CDATA[namemary/nameage18/agegender女/gender ]]/code/studentstudent id200namemary/nameage18/agegender女/gender/studentschool清华大学/schoolcity/ /students 7 转义字符 对于一些单个字符若想显示其原始样式也可以使用转义的形式予以处理 8 格式正规的 XML 文档-小结  遵循如下规则的 XML 文档称为格式正规的 XML 文档 XML 声明语句 ?xml version1.0 encodingutf-8? 必须有且仅有一个根元素 标记大小,区分大小写的. 属性值用引号 标记成对 空标记关闭 元素正确嵌套 三、DOM4j  1 文档 文档: https://dom4j.github.io/javadoc/1.6.1/ 2 XML 解析技术原理 不管是 html 文件还是 xml 文件它们都是标记型文档都可以使用 w3c 组织制定的dom 技术来解析document 对象表示的是整个文档可以是 html 文档也可以是 xml 文档 3 XML 解析技术介绍 早期 JDK 为我们提供了两种 xml 解析技术 DOM 和 Sax 简介这两种技术已经过时知道有这两种技术即可 dom 解析技术是 W3C 组织制定的而所有的编程语言都对这个解析技术使用了自己语言的特点进行实现。 Java 对 dom 技术解析也做了实现 sun 公司在 JDK5 版本对 dom 解析技术进行升级SAX Simple API for XML SAX 解析它是以类似事件机制通过回调告诉用户当前正在解析的内容。 是一行一行的读 取 xml 文件进行解析的。不会创建大量的 dom 对象。 所以它在解析 xml 的时候在性能上优于 Dom 解析 第三方的 XML 解析技术 jdom 在 dom 基础上进行了封装 dom4j 又对 jdom 进行了封装。 pull 主要用在 Android 手机开发是在跟 sax 非常类似都是事件机制解析 xml 文件 4 DOM4J 介绍  Dom4j 是一个简单、灵活的开放源代码的库(用于解析/处理 XML 文件)。Dom4j 是由早期 开发 JDOM 的人分离出来而后独立开发的。 与 JDOM 不同的是dom4j 使用接口和抽象基类虽然 Dom4j 的 API 相对要复杂一些 但它提供了比 JDOM 更好的灵活性。 Dom4j 是一个非常优秀的 Java XML API具有性能优异、功能强大和极易使用的特点。 现在很多软件采用的 Dom4j。 使用 Dom4j 开发需下载 dom4j 相应的 jar 文件 5 解压 zip 文档, 参考 DOM4J 文档  6 DOM4j 中获得 Document 对象的方式 开发 dom4j 要导入 dom4j 的包  6.1 读取 XML 文件,获得 document 对象 6.2. 解析 XML 形式的文本,得到 document 对象. 6.3 主动创建 document 对象  7 DOM4j 应用实例  7.1 使用 DOM4J 对 students.xml 文件进行增删改查 重点讲解查询(遍历和指定查询) xml增删改使用少,作为扩展给出案例 7.2. 引入 dom4j 的依赖的 jar 包  7.3. 创建 students.xml  ?xml version1.0 encodingutf-8 ? studentsstudent id01name小龙女/namegender女/genderage16/ageresume古墓派掌门人/resume/studentstudent id02name欧阳锋/namegender男/genderage18/ageresume白驼山,蛤蟆神功/resume/student /students 7.4. 创建\Dom4j_.java import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.io.OutputFormat; import org.dom4j.io.SAXReader; import org.dom4j.io.XMLWriter; import org.junit.Test;import java.io.*; import java.util.List;/*** author 林然* version 1.0*/ public class Dom4j_ {/*** 演示如何加载 xml 文件*/Testpublic void loadXML() throws DocumentException {//得到一个解析器SAXReader readernew SAXReader();Document documentreader.read(new File(src/students.xml));System.out.println(document);}/**** 遍历所有的student信息*/Testpublic void listStus() throws DocumentException {//得到一个解析器SAXReader readernew SAXReader();Document documentreader.read(new File(src/students.xml));//1 得到rootElementElement rootElementdocument.getRootElement();//2 得到rootElement的student ElementsListElement studentsrootElement.elements(student);//System.out.println(students.size());for (Element student:students) {//element就是student元素//获取student的name元素Element namestudent.element(name);Element agestudent.element(age);Element resumestudent.element(resume);Element genderstudent.element(gender);System.out.println(学生信息 name.getText() age.getText() resume.getText() gender.getText());}}Testpublic void readOne() throws DocumentException {//指定读取第一个学生信息//得到一个解析器SAXReader readernew SAXReader();Document documentreader.read(new File(src/students.xml));//1 得到rootElementElement rootElementdocument.getRootElement();//2 获取第一个学生Element student (Element) rootElement.elements(student).get(0);//3 输出该学生的信息//获取student的name元素Element name student.element(name);Element agestudent.element(age);Element resumestudent.element(resume);Element genderstudent.element(gender);System.out.println(学生信息 name.getText() age.getText() resume.getText() gender.getText());//4 获取student的属性System.out.println(student.attributeValue(id));}/*** 加元素(要求: 添加一个学生到 xml 中) [不要求使用少了解]* throws Exception*/Testpublic void add() throws DocumentException, IOException {//1.得到解析器SAXReader saxReader new SAXReader();//2.指定解析哪个 xml 文件Document document saxReader.read(new File(src/students.xml));//首先我们来创建一个学生节点对象Element newStu DocumentHelper.createElement(student);Element newStu_name DocumentHelper.createElement(name);//如何给元素添加属性newStu.addAttribute(id, 04);newStu_name.setText(宋江);//创建 age 元素Element newStu_age DocumentHelper.createElement(age);newStu_age.setText(23);//创建 resume 元素Element newStu_intro DocumentHelper.createElement(resume);//把三个子元素节点加到 newStu 下newStu.add(newStu_name);newStu.add(newStu_age);newStu.add(newStu_intro);//再把 newStu 节点加到根元素document.getRootElement().add(newStu);//直接输出会出现中文乱码:OutputFormat output OutputFormat.createPrettyPrint();output.setEncoding(utf-8);//输出的编码 utf-8//把我们的 xml 文件更新// lets write to a file//new FileOutputStream(new File(src/myClass.xml))//使用到 io 编程 FileOutputStream 就是文件字节输出流XMLWriter writer new XMLWriter(new FileOutputStream(new File(src/students.xml)), output);writer.write(document);writer.close();}/*** //删除元素(要求删除第一个学生) 使用少了解* throws Exception*/Testpublic void del() throws Exception{//1.得到解析器SAXReader saxReader new SAXReader();//2.指定解析哪个 xml 文件Document document saxReader.read(new File(src/students.xml));//找到该元素第一个学生Element stu (Element)document.getRootElement().elements(student).get(2);//删除元素stu.getParent().remove(stu);// //删除元素的某个属性// stu.remove(stu.attribute(id));//更新 xml//直接输出会出现中文乱码:OutputFormat output OutputFormat.createPrettyPrint();output.setEncoding(utf-8);//输出的编码 utf-8//把我们的 xml 文件更新XMLWriter writer new XMLWriter(new FileOutputStream(new File(src/students.xml)), output);writer.write(document);writer.close();System.out.println(删除成功~);}/*** //更新元素(要求把所有学生的年龄3) 使用少了解* throws Exception*/Testpublic void update() throws Exception{//1.得到解析器SAXReader saxReader new SAXReader();//2.指定解析哪个 xml 文件Document document saxReader.read(new File(src/students.xml));//得到所有学生的年龄ListElement students document.getRootElement().elements(student);//遍历, 所有的学生元素的 age3for (Element student : students) {//取出年龄Element age student.element(age);age.setText((Integer.parseInt(age.getText()) 3) );}//更新//直接输出会出现中文乱码:OutputFormat output OutputFormat.createPrettyPrint();output.setEncoding(utf-8);//输出的编码 utf-8//把我们的 xml 文件更新XMLWriter writer new XMLWriter(new FileOutputStream(new File(src/students.xml)), output);writer.write(document);writer.close();System.out.println(更新成功~);} }
http://www.pierceye.com/news/513197/

相关文章:

  • 建设厅网站预算员报名时间网站建设策划书的编制
  • 厦门手机网站建设公司哪家好鲜花网站源码
  • 北京家居网站建设如何制作软件手机软件
  • 北京网站建设策划解决方案长沙建设工程造价网站
  • 北京网站设计公司价格阿里云wordpress插件
  • 网站建设自助建站企业萧山人才网手机版
  • 长沙建站挺找有为太极wordpress 需要zend
  • 通信管理局 网站备案天猫网站设计教程
  • 营销型网站制作成都打造品牌的三点策略
  • 做查工资的网站如何下载网页在线视频
  • 北沙滩网站建设公司主页怎么填
  • 手机asp网站网站设计方案
  • 长春市网站开发广东一站式网站建设推荐
  • 企业网站推广策略商会联盟网站建设方案
  • 清丰网站建设百度推广建设网站是不是合发
  • 邢台12345网站哪个公司的装饰设计公司
  • 嘉兴网嘉兴网站建设手机网站管理软件
  • 网站主色调简介怎么说本地常州微信网站建设
  • 电子商务网站数据库建设怎样推广一个网站
  • illustrator 学习网站wordpress外链产品
  • 电脑端网站一般做多宽最好网页游戏制作成本
  • 怎样做好手机网站建设wordpress开启xml rpc
  • 泉州企业网站建设公司做外贸要建什么网站
  • 找人做网站价格永城网站设计公司
  • 如何让网站做网页适配深圳市门户网站建设多少钱
  • 中金超钒 网站建设淘客推广方法
  • 网站建设的基本流程域名备案需要哪些资料
  • 怎么查找网站死链怎么自己做微信推送新闻
  • 做网站的人能看到浏览的人的信息吗怎么刷网站权重
  • 有了域名搭建网站详细步骤服务外包有哪些