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

网站开发 企业 定制系统徐州网站建设公司官网

网站开发 企业 定制系统,徐州网站建设公司官网,石家庄网站建设找哪家,成都网站建设 四川冠辰文章目录1.xml1.1概述【理解】(不用看)1.2标签的规则【应用】1.3语法规则【应用】1.4xml解析【应用】1.5DTD约束【理解】1.5.1 引入DTD约束的三种方法1.5.2 DTD语法#xff08;会阅读#xff0c;然后根据约束来写#xff09;1.6 schema约束【理解】1.6.1 编写schema约束1.6.… 文章目录1.xml1.1概述【理解】(不用看)1.2标签的规则【应用】1.3语法规则【应用】1.4xml解析【应用】1.5DTD约束【理解】1.5.1 引入DTD约束的三种方法1.5.2 DTD语法会阅读然后根据约束来写1.6 schema约束【理解】1.6.1 编写schema约束1.6.2 引入schema约束properties文件变量名指定定义一个多个对象全路径名时不方便阅读 xml就方便许多了对配置有自己的一套语法格式很健全很强大实用 1.xml 1.1概述【理解】(不用看) 万维网联盟(W3C) 万维网联盟(W3C)创建于1994年又称W3C理事会。1994年10月在麻省理工学院计算机科学实验室成立。 建立者 Tim Berners-Lee (蒂姆·伯纳斯·李)。 是Web技术领域最具权威和影响力的国际中立性技术标准机构。 到目前为止W3C已发布了200多项影响深远的Web技术标准及实施指南 如广为业界采用的超文本标记语言HTML标准通用标记语言下的一个应用、 可扩展标记语言XML标准通用标记语言下的一个子集 以及帮助残障人士有效获得Web信息的无障碍指南WCAG等 xml概述 XML的全称为(EXtensible Markup Language)是一种可扩展的标记语言 标记语言: 通过标签来描述数据的一门语言(标签有时我们也将其称之为元素) 可扩展标签的名字是可以自定义的,XML文件是由很多标签组成的,而标签名是可以自定义的 作用 用于进行存储数据和传输数据作为软件的配置文件 作为配置文件的优势 可读性好可维护性高 1.2标签的规则【应用】 标签由一对尖括号和合法标识符组成 student标签必须成对出现 student /student 前边的是开始标签后边的是结束标签特殊的标签可以不成对,但是必须有结束标记 address/标签中可以定义属性,属性和标签名空格隔开,属性值必须用引号引起来 student id1 /student标签需要正确的嵌套 这是正确的: student id1 name张三/name /student 这是错误的: student id1name张三/student/name1.3语法规则【应用】 语法规则 XML文件的后缀名为xml 文档声明必须是第一行第一列 ?xml version“1.0” encoding“UTF-8” standalone“yes”? version该属性是必须存在的 (值也固定1.0吧 不要写别的) encoding该属性不是必须的 ​ 打开当前xml文件的时候应该是使用什么字符编码表(一般取值都是UTF-8) standalone: 该属性不是必须的描述XML文件是否依赖其他的xml文件取值为yes/no 必须存在一个根标签有且只能有一个 XML文件中可以定义注释信息 XML文件中可以存在以下特殊字符 lt; 小于 gt; 大于 amp; 和号 apos; 单引号 quot; 引号XML文件中可以存在CDATA区 ![CDATA[ …内容… ]] 示例代码 ?xml version1.0 encodingUTF-8 ? !--文档声明必须第一行第一列 上面连空格 空行都不能有--students !--根标签 有且只能有一个--!--学生1 通过id区分是哪个学生--student id1name张三/nameage23/ageinfo张三信息[特殊字符:小于:lt; 大于:gt; 且:amp; 单引号:apos; 双引号:quot;]/infomessage![CDATA[直接用CDATA域: 这里的所有东西都当做简简单单的文本不会被转义 ]]/message/student!--学生2 id2--student id2name李四/nameage24/age/student/students 1.4xml解析【应用】 概述 xml解析就是从xml中获取到数据 常见的解析思想 DOM(Document Object Model)文档对象模型:就是把文档的各个组成部分看做成对应的对象。 会把xml文件全部加载到内存,在内存中形成一个树形结构,再获取对应的值 常见的解析工具 JAXP: SUN公司提供的一套XML的解析的APIJDOM: 开源组织提供了一套XML的解析的API-jdomDOM4J: 开源组织提供了一套XML的解析的API-dom4j,全称Dom For Javapull: 主要应用在Android手机端解析XML 解析的准备工作 我们可以通过网站https://dom4j.github.io/ 去下载dom4j 今天的资料中已经提供,我们不用再单独下载了,直接使用即可 将提供好的dom4j-1.6.1.zip解压,找到里面的dom4j-1.6.1.jar 在idea中当前模块下新建一个libs文件夹,将jar包复制到文件夹中 选中jar包 - 右键 - 选择add as library即可 需求 解析提供好的xml文件将解析到的数据封装到学生对象中并将学生对象存储到ArrayList集合中遍历集合 代码实现 注意新建目录复制好jar包之后得右键导入一下才能使用 导入成功后就可以展开了 student.xml ?xml version1.0 encodingUTF-8 ? students !--学生1 通过id区分是哪个学生--student id1name张三/nameage23/age/student!--学生2 id2--student id2name李四/nameage24/age/student /studentsStudent.java public class Student {private String id;private String name;private int age;//全参构造无参构造set/get, toString\ }XmlParse.java /*** 利用dom4j解析xml文件*/ public class XmlParse {public static void main(String[] args) throws Exception {//1.获取Document对象//1.1先得获取一个解析器对象(SAXReader)SAXReader saxReader new SAXReader();//1.2利用解析器把xml文件加载到内存中,并返回一个文档对象(Document对象)Document document saxReader.read(new File(myxml/xml/student.xml));//2.逐步获取标签对象//2.1 获取根标签Element rootElement document.getRootElement();//2.2 通过根标签获取Student标签//方法1elements(),返回调用者所有子标签,放在一个List中/*List list rootElement.elements();System.out.println(list.size());//3 不仅student,连aaa也都获取到了*///方法2★ elements(标签名),返回调用者所有指定名称子标签,放在一个List中/*List list rootElement.elements(student);System.out.println(list.size());//2 只有所有student了*/ListElement studentElements rootElement.elements(student);//用来装学生对象ArrayListStudent list new ArrayList();//2.3 遍历集合得每一个student标签for (Element studentElement : studentElements) {// 2.4 继续读取每一个student子标签以及属性//2.4.1 获取id属性以及其值Attribute attribute studentElement.attribute(id);//获取id属性String id attribute.getValue();//获取id属性值//2.4.2 获取各个子标签 以及其值(标签体内容)//element(标签名): 获取调用者指定子标签(单个)Element nameElement studentElement.element(name);//name标签String name nameElement.getText();//name标签体内容(需要的值)Element ageElement studentElement.element(age);String age ageElement.getText();//3. 最后根据获取到的值 封装对象了//System.out.println(id name age);Student stu new Student(id, name, Integer.parseInt(age));list.add(stu);}System.out.println(list);}}1.5DTD约束【理解】 什么是约束 用来限定xml文件中可使用的标签以及属性 约束的分类 DTDschema 编写DTD约束 步骤 创建一个文件这个文件的后缀名为.dtd 看xml文件中使用了哪些元素 !ELEMENT 可以定义元素 判断元素是简单元素还是复杂元素 简单元素没有子元素。 复杂元素有子元素的元素 代码实现 persondtd.dtd !ELEMENT persons (person) !ELEMENT person (name,age) !ELEMENT name (#PCDATA) !ELEMENT age (#PCDATA)person.xml ?xml version1.0 encodingUTF-8 ? !DOCTYPE persons SYSTEM persondtd.dtd !--persons根标签 SYSTEM表示引入本地约束--!--引入之后再编写也有提示了-- personspersonname张三/nameage18/age/person /persons1.5.1 引入DTD约束的三种方法 引入本地dtd !DOCTYPE 根元素名称 SYSTEM ‘DTD文件的路径在xml文件内部引入 !DOCTYPE 根元素名称 [ dtd文件内容 ]引入网络dtd !DOCTYPE 根元素的名称 PUBLIC DTD文件名称 DTD文档的URL代码实现 引入本地DTD约束 !DOCTYPE 根元素名称 SYSTEM ‘DTD文件的路径persondtd.dtd !ELEMENT persons (person) !ELEMENT person (name,age) !ELEMENT name (#PCDATA) !ELEMENT age (#PCDATA)person1.xml ?xml version1.0 encodingUTF-8 ? !DOCTYPE persons SYSTEM persondtd.dtd !--方法1引入本地约束--personspersonname张三/nameage18/age/person /persons在xml文件内部引入 !DOCTYPE 根元素名称 [ dtd文件内容 ]person2.xml ?xml version1.0 encodingUTF-8 ? !DOCTYPE persons [!ELEMENT persons (person)!ELEMENT person (name,age)!ELEMENT name (#PCDATA)!ELEMENT age (#PCDATA)] !--方法2xml文件内部引入约束--personspersonname张三/nameage18/age/person /persons 引入网络dtd !DOCTYPE 根元素的名称 PUBLIC DTD文件名称 DTD文档的URL暂时了解 后面使用 1.5.2 DTD语法会阅读然后根据约束来写 定义元素 定义一个元素的格式为!ELEMENT 元素名 元素类型 简单元素 ​ EMPTY: 表示标签体为空 ​ ANY: 表示标签体可以为空也可以不为空 ​ PCDATA: 表示该元素的内容部分为字符串 复杂元素 ​ 直接写子元素名称. 多个子元素可以使用,“或者”|隔开 ​ ,表示定义子元素的顺序 ; “|”: 表示子元素只能出现任意一个 ​ ?零次或一次, 一次或多次, *零次或多次;如果不写则表示出现一次 不限制个数就是只能写一次 定义属性 格式 定义一个属性的格式为!ATTLIST 元素名称 属性名称 属性的类型 属性的约束 属性的类型 ​ CDATA类型普通的字符串 属性的约束: ​ // #REQUIRED 必须的 ​ // #IMPLIED 属性不是必需的 ​ // #FIXED value属性值是固定的 代码实现 代码实现 !ELEMENT persons (person) !--person 1个或多个 person 只能写一个-- !ELEMENT person (name,age) !ELEMENT name (#PCDATA) !ELEMENT age (#PCDATA) !ATTLIST person id CDATA #REQUIRED !ATTLIST name id CDATA #FIXED p1 !-- 属性值定死为name了 --?xml version1.0 encodingUTF-8 ? !DOCTYPE persons SYSTEM persondtd.dtdpersonsperson id001name张三/nameage23/age/personperson id 002name张三/nameage23/age/person/persons1.6 schema约束【理解】 schema和dtd的区别 schema约束文件也是一个xml文件符合xml的语法这个文件的后缀名.xsd一个xml中可以引用多个schema约束文件多个schema使用名称空间区分名称空间类似于java包名dtd里面元素类型的取值比较单一常见的是PCDATA类型但是在schema里面可以支持很多个数据类型schema 语法更加的复杂 1.6.1 编写schema约束 步骤 1创建一个文件这个文件的后缀名为.xsd。 2定义文档声明 3schema文件的根标签为 schema 4在schema中定义属性 ​ xmlnshttp://www.w3.org/2001/XMLSchema 5在schema中定义属性 ​ targetNamespace 唯一的url地址指定当前这个schema文件的名称空间。 6在schema中定义属性 ​ elementFormDefaultqualified“表示当前schema文件是一个质量良好的文件。 7通过element定义元素 8判断当前元素是简单元素还是复杂元素 代码实现 person.xsd ?xml version1.0 encodingUTF-8 ? !--根标签有三个固定属性-- schemaxmlnshttp://www.w3.org/2001/XMLSchematargetNamespacehttp://www.whu.cn/javaseelementFormDefaultqualified !--定义persons复杂元素--element namepersonscomplexType!--sequence表示子标签必须按顺序来--sequence!--定义person复杂元素--element namepersoncomplexTypesequence!--定义name和age简单元素--element namename typestring/elementelement nameage typestring/element/sequence/complexType/element/sequence/complexType/element/schema1.6.2 引入schema约束 步骤 1在根标签上定义属性xmlns“http://www.w3.org/2001/XMLSchema-instance” 2通过xmlns引入约束文件的名称空间 3给某一个xmlns属性添加一个标识用于区分不同的名称空间 ​ 格式为: xmlns:标识“名称空间地址” ,标识可以是任意的但是一般取值都是xsi 4通过xsi:schemaLocation指定名称空间所对应的约束文件路径 ​ 格式为xsi:schemaLocation 名称空间url 文件路径“ 代码实现
http://www.w-s-a.com/news/835139/

相关文章:

  • 长春火车站和高铁站是一个站吗公司名称注册查询系统
  • 便利的集团网站建设网页的依托网站
  • 茶叶网站建设题库制作助手app
  • 网站建设栏目层级北京网站搭建公司电话
  • 网站开发运营经理打开百度竞价页面是网站是什么
  • 国内最专业的设计网站建设现在用什么语言做网站
  • 湖南网站开发 岚鸿象山县建设工程招投标网站
  • 长沙免费网站排名wordpress 教学
  • 专门做app的网站html代码是什么
  • 临沂网站制作建设欧米茄表官网
  • 北京模板网站开发全包网站建设的第三方平台
  • 在凡科做的网站怎么推广网页模板下载 免费 html
  • 有关网站建设的标题仿亿欧网wordpress
  • 网站建设公司销售招聘常用的搜索引擎有哪些?
  • wordpress中.htaccess新上线的网站怎么做优化
  • 家教网站怎么做网站建设品牌推荐
  • 青岛做外贸网站建设茶叶公司网站建设策划书
  • 个人电脑做网站主机三合一网站
  • 用html框架做网站怎么在.Net中做团购网站
  • 怎样建一个自己公司的网站制作网站需要钱吗
  • 联盟网站制作wap网站制作公司
  • 美丽乡村建设发展论坛网站wordpress 仿站 教程网
  • 浙江省建设注册管理中心网站首页优设设计网站导航
  • 台州小型网站建设国内免费的建网站平台
  • 自己做网站不推广网站建设工作室发展
  • 有女人和马做网站吗宁波seo优势
  • 网站做用户记录表电商运营推广计划方案
  • 网站备案认领杭州网页设计公司招聘
  • 易签到网站开发设计做网站运营有前途吗
  • 南通网站建设心得2023必考十大时政热点