XML

本文深入探讨了可扩展标记语言(XML)的基础知识,包括文档声明、元素定义、注释和处理指令等内容,并详细介绍了XML解析的方法,如DOM和SAX。此外,还讲解了XML约束机制,如DTD和Schema,以及名称空间的概念。最后,文章提供了关于Tomcat服务器软件的全面指南,包括其目录结构、默认端口和项目发布方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

可扩展标记语言

文档声明

<?xml version="1.0" encoding="UTF-8" standalone="no"?>

standalone
no–该文档会依赖关联其他文档
yes–这是一个独立的文档

用来声明xml的基本属性,用来指挥解析引擎如何去解析当前xml
通常一个xml都要包含并且只能包含一个文档声明
xml的文档必须在整个xml的最前面,在文档声明之前不能有任何内容

<?xml version="1.0" ?>
--version是必须存在的属性,表明当前xml所遵循规范的版本,目前位置都写1.0就可以了
<?xml version="1.0" encoding="utf-8" ?>
--encoding用来只会解析引擎在解析xml时使用的编码,一定要保证xml格式的数据在保存时使用的编码和解析时使用的编码必须一致,才不会有乱码问题
<?xml version="1.0" encoding="utf-8" standalone="yes" />
--standalone属性用来指明当前xml是否是一个独立的xml,默认值是yes表明当前文档不需要依赖于其他文档,如果当前文档依赖其他文档而存在则需要将此值设置为no

encoding

encoding方式与文件保存方式必须保持一致

元素的定义

<元素名称 属性名称=“属性的值">
</元素名称>

注释

CDATA区

<和&是非法的,需要转义
“<”:<
“>”:>
“&”:&
" --> "
’ --> ’

如果某字符串有较多字符,且包含类似标签或关键字的文字,可以用CDATA让包装XML不解析

<![CDATA[......]]>

服务器给客户端返回数据有时候会用

处理指令

处理指令,简称PI (processing instruction)。处理指令用来指挥解析引擎如何解析XML文档内容。
<?xml-stylesheet type="text/css" href="1.css"?>

XML解析

DOM

document object model
把整个XML读到内存,形成树结构
整个文档称为document对象
属性 Attribute
元素节点 Element
文本 Text
上面4个都称为Node

SAX

Simple API for XML 基于事件驱动,读一行,解析一行
不可进行增删,只能查询,省内存

解决方案

dom4j:使用较广泛
jaxp:sun公司,繁琐
jdom:

dom4j

//1.创建sax读取对象
Reader reader = new SAXReader();
//2.指定解析的XML源
Document document = reader.read(new File("");
//3.得到元素
Element rootElement = document.getRootElement();
//获取元素下面的子元素
rootElement.element("");
//获取所有子元素
List<Element> elements = rootElement.elements();

Xpath的作用

xml的路径语言,用于快速定位元素(需要添加jar包 jaxen)

//使用Xpath获取第一个元素
element.selectSingleNode("xpath描述");
//获取所有
element.selectNodes("xpath描述");

XML约束

DTD

语法自成一派,可读性差,文件可命名为.dtd后缀
<!ELEMENT 元素的名称 类型>
如:

<!ELEMENT stus (stu)+> stus元素下有多个元素stu <!ELEMENT stu (name,age)> stu下有两个元素,顺序必须保证 <!ELEMENT name(#PCDATA)> <!ELEMENT age (#PCDATA)>

引入DTD:

]>

元素个数
+:有1个或多个
*:有0个或多个
?:零个或一个

属性类型定义
CDATA:普通文字
ID:属性值必须唯一

,:元素按顺序
|:有一个即可

<!ATTLIST 元素名称 属性名称 属性类型 默认值>
如:

<!ATTLIST stu id ID #IMPLIED> stu有一个文本属性,也可没有
Schema

语法就是XML,解析方便

文件后缀xsd

xmlns:名称空间/命名空间
targetNamespace:目标名称空间,下面定义的元素都与此名称空间绑定
elementFormDefault:元素格式化情况










xsd被W3C标准约束,XML(实例文档)被xsd约束
引用Schema:

名称空间的作用
一个XML如果想指定约束规则,用DTD则只能指定一个
用schema,则可以有多个。
换句话说,XML可引用多个schema,只能引用 一个DTD,名称空间的作用就是在写元素时可指定该元素用哪一套约束规则
aa:name bb:name

web服务器软件

Tomcat(free)
webLogic BEA
Websphere IBM
IIS Microsoft

Tomcat

tomcat.apache.org
默认端口号:8080
mysql

Tomcat目录介绍
  • bin
    包含一些jar、bat、startup.bat
  • conf
    tomcat配置,server.xml web.xml
  • lib
    tomcat运行所需的文件
  • logs
    运行日志文件
  • temp
    临时文件
  • webapps
    发布到tomcat服务器上的项目
  • work
    jsp翻译成class的文件存放地

发布项目到tomcat

让其他电脑访问本电脑的资源,三种方式
1.将资源文件放到webapps/ROOT,访问http://localhost:8080/stu.xml
http://localhost:8080对应的是webapps/ROOT
或 在webapps下新建一个文件夹,如xml,将资源文件放到此文件夹中
http://localhost:8080/xml/stu.xml
http://localhost:8080/xml对应的是webapps/xml

2.配置虚拟路径
使用localhost:8080打开tomcat首页,在左侧找到tomcat文档入口,在文档页面左侧找到Context入口并进入
http://localhost:8080/docs/config/context.html
在conf/server.xml找到host节点
增加
浏览器可访问http://localhost:8080/a/stu.xml

3.配置虚拟路径
在tomcat/conf/cataxlina/localhost/新建xml文件stu.xml
在stu.xml文件中写入

浏览器可访问http://localhost:8080/stu/stu.xml

<think>嗯,用户问的是AD软件中换层的快捷键。首先,我需要确定AD指的是哪个软件。通常,AD可能指Altium Designer,这是一款常用的电子设计自动化软件,用于电路板设计。所以用户可能是在使用Altium Designer时想要快速切换层,提高工作效率。 接下来,我需要回忆或查找Altium Designer中关于层切换的快捷键。根据之前的知识,Altium Designer中确实有一些快捷键用于切换不同的层。比如,小键盘的数字键可能对应不同的层,例如1是Top Layer,2是Mid Layer 1,依此类推。不过,不同版本可能会有些差异,所以需要确认这一点是否正确。 另外,用户可能还不太清楚如何自定义这些快捷键,或者是否有其他方式快速换层。比如,使用快捷键L调出层设置面板,或者通过Preferences设置自定义快捷键。这可能是用户潜在的需求,想要更灵活地调整快捷键以适应自己的习惯。 还要考虑用户可能的操作环境,比如是否在使用英文版软件,或者是否有安装不同版本的Altium Designer,因为不同版本快捷键可能不同。此外,用户可能对层的概念不太熟悉,比如信号层、电源层、丝印层等,是否需要简要解释这些层的用途,以帮助用户更好地理解换层的意义。 另外,是否有其他相关功能,比如切换层的同时切换走线层,或者如何在多层板中快速跳转,这些也可能是用户需要的信息。比如在布线时按数字键切换层并自动添加过孔,这样的操作是否可行,需要确认正确性。 总结一下,回答需要包括: 1. 常用默认快捷键,如小键盘数字键对应各层。 2. 如何通过快捷键L打开层设置面板。 3. 自定义快捷键的方法。 4. 可能需要注意的版本差异或操作细节。 5. 简要说明层的类型和用途,帮助用户理解为何需要换层。 需要确保信息准确,避免错误,比如Altium Designer是否真的使用小键盘数字键作为默认切换层的快捷键。可能需要查阅官方文档或可靠来源确认。此外,提醒用户如果快捷键不起作用,可能需要检查键盘设置或软件版本,确保兼容性。 最后,组织回答时要结构清晰,分点说明,便于用户理解。如果有不确定的地方,建议用户参考软件帮助文档或官方资源,以确保信息的正确性。</think>在 Altium Designer(AD)中,**换层快捷键**是提高 PCB 设计效率的重要工具。以下是常用操作说明: --- ### 一、默认快捷键 1. **小键盘数字键** - 按下数字键 **1~6** 可快速切换至对应信号层(例如:1=Top Layer,2=Mid Layer 1,依此类推)。 - **+/- 键**:切换至下一层/上一层(需开启小键盘的 Num Lock)。 2. **信号层与平面层切换** - **Shift+Ctrl+鼠标滚轮**:按住后滚动滚轮可快速切换层(需按住快捷键)。 3. **特殊层快捷键** - **L**:打开层设置面板(快速启用/禁用层显示)。 - **Ctrl+Shift+G**:切换到丝印层(Top Overlay)。 - **Ctrl+Shift+M**:切换到阻焊层(Top Solder Mask)。 --- ### 二、自定义快捷键 1. 通过 **Preferences > PCB Editor > Shortcuts** 修改快捷键。 2. 搜索功能关键词(如 `Layer Next`、`Layer Previous`)绑定自定义按键。 --- ### 三、实用技巧 1. **布线时自动换层**: 布线过程中按下对应层数字键,软件会自动添加过孔并切换至目标层。 2. **层高亮显示**: 按 **Shift+S** 进入单层模式,按层数字键可快速高亮特定层。 --- ### 四、注意事项 - 不同版本快捷键可能略有差异,建议通过 **Help > Shortcuts** 确认当前版本设置。 - 若快捷键失效,检查键盘输入法或软件冲突。 如果需要更详细的层管理(如创建/删除层),可通过 **Design > Layer Stack Manager** 操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值