学习目标

一.XML 概述

1 概念
XML(Extensible Markup Language):可扩展标记语言
可扩展:标签都是自定义的。
2 发展历程
HTML 和 XML 都是 W3C(万维网联盟)制定的标准,最开始 HTML 的语法过于松散,于是 W3C 制定了更严格的 XML 语法标准,希望能取代 HTML。但是程序员和浏览器厂商并不喜欢使用 XML,于是现在的 XML 更多的用于配置文件及传输数据等功能。
配置文件:在今后的开发过程当中我们会频繁使用框架(框架:半成品软件),使用框架时,需要写配置文件配置相关的参数,让框架满足我们的开发需求。而我们写的配置文件中就有一种文件类型是 XML。
传输数据:在网络中传输数据时并不能传输 java 对象,所以我们需要将 JAVA 对象转成字符串传输,其中一种方式就是将对象转为 XML 类型的字符串。
3 xml 和 html 的区别:
  • xml 语法严格,html 语法松散
  • xml 标签自定义,html 标签预定义
4 XML 基本语法
  • 文件后缀名是.xml
  • 第一行必须是文档声明
  • 有且仅有一个根标签
  • 属性值必须用引号(单双都可)引起来
  • 标签必须正确关闭
  • 标签名区分大小写
5 XML 组成部分
5.1 文档声明
文档声明必须放在第一行,格式为:<?xml 属性列表 ?>
属性列表:
version:版本号(必须)
encoding:编码方式 (不写时默认是utf-8编码)
5.2 标签:
XML 中标签名是自定义的,标签名有以下要求:
  • 包含数字、字母、其他字符 (啥字符都行)
  • 不能以数字和标点符号(下划线和$除外)开头
  • 不能包含空格
5.3 指令(了解)
指令是结合 css 使用的,但现在 XML 一般不结合 CSS,语法为:
<?xml-stylesheet type="text/css" href="a.css" ?>
5.4 属性
属性值必须用引号(单双都可)引起来
5.5 文本
如果想原样展示文本,需要设置 CDATA 区,格式为:<![CDATA[想原样展示的文本]]>

 

二.约束

1.什么是约束

约束是一个文件,可以规定 xml 文档的书写规则。我们作为框架的使用者,不需要会写约束文件,只要能够在 xml 中引入约束文档,简单的读懂约束文档即可。XML 有两种约束文件类型:DTD 和 Schema。

2.DTD 约束

DTD 是一种较简单的约束技术
引入:
本地:<!DOCTYPE 根标签名 SYSTEM "dtd 文件的位置">
网络:<!DOCTYPE 根标签名 PUBLIC "dtd 文件的位置" "dtd 文件路径">
示例:
student.dtd:
<!ELEMENT students (student*) >
<!ELEMENT student (name,age,sex)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT sex (#PCDATA)>
<!ATTLIST student number ID #REQUIRED>

解释:

<!ELEMENT students (student*) > 
*代表多个,一个students结点下面有多个student结点,ELEMENT放在最上面代表students是根结点<!ELEMENT student (name,age,sex)>
一个student结点下可以放一个name结点,一个age结点,一个sex结点,且按此顺序不能乱!<!ELEMENT name (#PCDATA)>
PCDATA是文本的意思,即name结点里放的是文本,下面的age,sex同理
<!ELEMENT age (#PCDATA)>
<!ELEMENT sex (#PCDATA)><!ATTLIST student number ID #REQUIRED>

student结点有个ID类型的number属性 ,且ID不能重复,#REQUIRED代表必须。

按照如上约束写的student.xml:

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE students SYSTEM "student.dtd">
<students><student number="baizhan001"><name>懒羊羊</name><age>10</age><sex>男</sex></student><student number="baizhan002"><name>美羊羊</name><age>8</age><sex>女</sex></student>
</students>

3.Schema 约束

DTD约束不常用,而Schema(xsd)比较常用。
引入:
(1)写 xml 文档的根标签
(2)引入 xsi 前缀:确定 Schema 文件的版本。
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
(3)引入 Schema 文件
xsi:schemaLocation="Schema 文件定义的命名空间 Schema 文件的具体路径"
(4)为 Schema 约束的标签声明前缀
xmlns:前缀="Schema 文件定义的命名空间"
例如:
xsd文件本质上也是一个xml文件,即Schema 约束就是用一个xml文件约束另一个xml文件。

enumeration是枚举类型,意思是只有那几个枚举选项可以选择。

\d是数字的意思,所以\d{4}是四位是四位数字的意思。

targetNamespace是域名空间。 

student.xsd:

<?xml version="1.0"?>
<xsd:schema xmlns="http://www.itbaizhan.cn/xml"xmlns:xsd="http://www.w3.org/2001/XMLSchema"targetNamespace="http://www.itbaizhan.cn/xml" elementFormDefault="qualified"><!--students标签--><xsd:element name="students" type="studentsType"/><xsd:complexType name="studentsType"><xsd:sequence><!--student标签,students下的student标签最少有0个,最多无上限--><xsd:element name="student" type="studentType" minOccurs="0" maxOccurs="unbounded"/></xsd:sequence></xsd:complexType><xsd:complexType name="studentType"><xsd:sequence><!--student下又有三个标签,分别是name,age,sex--><xsd:element name="name" type="xsd:string"/><xsd:element name="age" type="ageType" /><xsd:element name="sex" type="sexType" /></xsd:sequence><!--student下又有一个number属性,是必须的--><xsd:attribute name="number" type="numberType" use="required"/></xsd:complexType><!--对sexType类型的约束--><xsd:simpleType name="sexType"><!--是个字符串--><xsd:restriction base="xsd:string"><!--枚举类型,要么是male,要么是female--><xsd:enumeration value="male"/><xsd:enumeration value="female"/></xsd:restriction></xsd:simpleType><!--对ageType类型的约束--><xsd:simpleType name="ageType"><!--是个整数--><xsd:restriction base="xsd:integer"><!--最小值是0,最大值是256--><xsd:minInclusive value="0"/><xsd:maxInclusive value="256"/></xsd:restriction></xsd:simpleType><!--对numberType类型的约束--><xsd:simpleType name="numberType"><!--是个字符串--><xsd:restriction base="xsd:string"><!--4位整数--><xsd:pattern value="baizhan_\d{4}"/></xsd:restriction></xsd:simpleType>
</xsd:schema> 

按照如上约束写的student.xml:

<?xml version="1.0"?>
<a:studentsxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.itbaizhan.cn/xml student.xsd"xmlns:a="http://www.itbaizhan.cn/xml"><!--前缀的作用就是当配置文件多了,前缀可以解决标签重名的问题--><a:student number="baizhan_0001"><a:name>喜羊羊</a:name><a:age>10</a:age><a:sex>male</a:sex></a:student></a:students>

三.XML解析

1.XML 解析思想 

XML 解析即读写 XML 文档中(我们想提取)的数据。框架的开发者通过 XML 解析读取框架使用者配置的参数信息,开发者也可以通过 XML 解析读取网络传来的数据。
DOM:将标记语言文档一次性加载进内存,在内存中形成一颗 dom 树
  • 优点:操作方便,可以对文档进行 CRUD (增删改查)的所有操作
  • 缺点:占内存
SAX:逐行读取,基于事件驱动的。
  • 优点:不占内存,一般用于手机 APP 开发中读取 XML
  • 缺点:只能读取,不能增删改

 Java开发中DOM用的比较多,SAX在手机APP中用的比较多。

DOM比较占内存,因为每个结点都要的生成一个Java对象;而SAX是一行一行读取,故只存一行的数据对象,所以不占内存。

2 常见解析器
JAXP:SUN 公司提供的解析器,支持 DOM 和 SAX 两种思想
DOM4J:一款非常优秀的解析器 ,主要支持DOM思想
Jsoup:
Jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。
PULL:Android 操作系统内置的解析器,支持 SAX 思想

2.Jsoup 解析器

(1)快速入门

步骤:
(1) 导入 jar 包
在工程下新建一个lib目录,将jsoup-1.11.2.jar放进去,右键Add as Library,然后
Level选择Module Library
(2) 加载 XML 文档进内存,获取 DOM 树对象 Document
(3) 获取对应的标签 Element 对象
(4) 获取数据

bug:

获取绝地路径时遇到的一个bug,报了找不到系统指定文件的异常,我看了下我的路径中有个文件名称是Idea 2019,而中间的空格却被解析成了%20

解决办法,参考这篇文章

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;import java.io.File;
import java.io.IOException;public class Demo1 {//获取XML中所有的学生姓名public static void main(String[] args) throws IOException {/*(2) 加载 XML 文档进内存,获取 DOM 树对象 Document2.1找到XML文档的绝对路径利用类加载器,通过项目中文件的相对路径找到硬盘中的绝对路径*///类加载器ClassLoader classLoader=Demo1.class.getClassLoader();//获得绝对路径//用replace将因路径中有空格而出现的%20还原为原来的空格String path=classLoader.getResource("com/baizhan/xml/xsd/student.xml").getPath().replace("%20"," ");//System.out.println(path);//2.2根据XML文档的路径,把XML文档加载进内存,并解析成Dom树对象Document document= Jsoup.parse(new File(path),"utf-8");//输出的文件内容是html文档,因为jsoup最开始是解析html文档的,所以解析式把document对象封装成html文档//System.out.println(document);/*(3) 获取对应的标签 Element 对象方法和js差不多*///Elements是Element的一个集合//根据标签名获得标签时,加了前缀不要忘记写前缀Elements name=document.getElementsByTag("a:name");//(4) 获取数据for (Element element:name){String text=element.text();System.out.println(text);}}
}

(2)常用对象

Jsoup:解析 xml 或 html,形成 dom 树对象。
常用方法:
一个解析方法,三个重载
static Document parse(File in, String charsetName):解析本地文件
static Document parse(String html):解析 html 或 xml 字符串
static Document parse(URL url, int timeoutMillis):解析网页源文件
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;import java.io.File;
import java.io.IOException;
import java.net.URL;public class Demo2 {public static void main(String[] args) throws IOException {//解析本地文件//获得绝对路径
//        String path=Demo2.class.getClassLoader().getResource(
//                "com/baizhan/xml/xsd/student.xsd").getPath().replace("%20"," ");
//        Document document= Jsoup.parse(new File(path),"utf-8");
//        System.out.println(document);//解析字符串
//        Document document1=Jsoup.parse("<a:student number=\"baizhan_0001\">\n" +
//                "        <a:name>喜羊羊</a:name>\n" +
//                "        <a:age>10</a:age>\n" +
//                "        <a:sex>male</a:sex>\n" +
//                "    </a:student>\n" +
//                "    <a:student number=\"baizhan_0002\">\n" +
//                "        <a:name>美羊羊</a:name>\n" +
//                "        <a:age>15</a:age>\n" +
//                "        <a:sex>female</a:sex>\n" +
//                "    </a:student>");
//        System.out.println(document1);//解析网络资源//第一个参数是访问的网络地址,第二个参数是最大等待时间,超过这个时间就默认是访问超时Document document=Jsoup.parse(new URL("http://www.baidu.com"),5000);//5sSystem.out.println(document);}
}
Document:xml 的 dom 树对象
常用方法:
Element getElementById(String id):根据 id 获取元素
Elements getElementsByTag(String tagName):根据标签名获取元素
Elements getElementsByAttribute(String key):根据属性获取元素
Elements getElementsByAttributeValue(String key,String value):根据属性名=属性值获取元素。
Elements select(Sting cssQuery):根据选择器选取元素。

student.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<students><student number="baizhan_0001"><name>喜羊羊</name><age id="a1">10</age><sex class="hh">male</sex></student><student number="baizhan_0002"><name>美羊羊</name><age>8</age><sex>female</sex></student>
</students>

Demo3.java :

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;import java.io.File;
import java.io.IOException;public class Demo3 {public static void main(String[] args) throws IOException {String path=Demo3.class.getClassLoader().getResource("com/baizhan/xml/jsoup/student.xml").getPath().replace("%20"," ");Document document= Jsoup.parse(new File(path),"utf-8");//根据 id 获取元素Element element1=document.getElementById("a1");System.out.println(element1.text());System.out.println("-----------------------");//根据标签名获取元素Elements elements=document.getElementsByTag("age");for (Element element:elements){System.out.println(element.text());}System.out.println("-----------------------");//根据属性获取元素Elements elements1=document.getElementsByAttribute("number");for (Element element:elements1){System.out.println(element);}System.out.println("-----------------------");//根据属性名 =属性值获取元素Elements elements2=document.getElementsByAttributeValue("number","baizhan_0001");for (Element element:elements2){System.out.println(element);}System.out.println("------------------------------------------");//根据选择器选取元素(速度最快)//css中根据id来选Elements elements3=document.select("#a1");//text()就是标签内的值System.out.println(elements3.text());System.out.println("-----------------------");//css中根据class来选Elements elements4=document.select(".hh");System.out.println(elements4);System.out.println("-----------------------");//css中根据标签名来选Elements elements5=document.select("name");System.out.println(elements5);}
}
Element: 元素对象
常用方法:
String text():获取元素包含的纯文本。
String html():获取元素包含的带标签的文本。
String attr(String attributeKey):获取元素的属性值。 
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;import java.io.File;
import java.io.IOException;public class Demo4 {public static void main(String[] args) throws IOException {String path=Demo4.class.getClassLoader().getResource("com/baizhan/xml/jsoup/student.xml").getPath().replace("%20"," ");Document document= Jsoup.parse(new File(path),"utf-8");Elements elements=document.getElementsByAttributeValue("number","baizhan_0001");for (Element element:elements){//获取元素包含的纯文本System.out.println(element.text());System.out.println("------------------------");//获取元素包含的带标签的文本System.out.println(element.html());System.out.println("------------------------");//获取元素的属性值。System.out.println(element.attr("number"));}}
}
3 XPath 解析
点击这里可学习XPath规则
XPath 即为 XML 路径语言,它是一种用来确定标记语言文档中某部分位置的语言。
使用方法:
1. 导入 Xpath 的 jar 包
JsoupXpath-0.3.2.jar放进去,右键Add as Library,然后Level选择Module Library
2. 获取 Document 对象
3. 将 Document 对象转为 JXDocument 对象
4. JXDocument 调用 selN(String xpath),获取 List<JXNode>对象。
5. 遍历 List<JXNode>,调用 JXNode 的 getElement(),转为 Element 对象。
6. 处理 Element 对象。
import cn.wanghaomiao.xpath.exception.XpathSyntaxErrorException;
import cn.wanghaomiao.xpath.model.JXDocument;
import cn.wanghaomiao.xpath.model.JXNode;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;import java.io.File;
import java.io.IOException;
import java.util.List;public class XPathDemo {public static void main(String[] args) throws IOException, XpathSyntaxErrorException {//2. 获取 Document 对象String path=XPathDemo.class.getClassLoader().getResource("com/baizhan/xml/jsoup/student.xml").getPath().replace("%20"," ");Document document= Jsoup.parse(new File(path),"utf-8");// 3. 将 Document 对象转为 JXDocument 对象JXDocument jxDocument=new JXDocument(document);// 4. cn.wanghaomiao.xpath.model.JXDocument 调用 selN(String xpath),获取 List<JXNode>对象。//获取所有的name标签,XPath的具体规则去W3C上去看//List<JXNode> jxNodes=jxDocument.selN("//name");//找到属性number为baizhan_0002的student的标签元素//List<JXNode> jxNodes=jxDocument.selN("//student[@number='baizhan_0002']");//想拿到baizhan_0001的年龄,找到属性number为baizhan_0001的student的标签元素下的age标签List<JXNode> jxNodes=jxDocument.selN("//student[@number='baizhan_0001']/age");// 5. 遍历 List<JXNode>,调用 JXNode 的 getElement(),转为 Element 对象。for (JXNode jxNode:jxNodes){Element element=jxNode.getElement();// 6. 处理 Element 对象。System.out.println(element.text());}}
}

 

查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. JAVA相关编译知识

    JAVA相关编译知识总览语言进化史整体流程编译器整体流程词法分析语法分析语义分析中间代码生成目标代码生成器代码优化编译相关知识编译种类热点探测技术编译什么什么时候进行检测&#xff0c;什么时候提交编译请求&#xff1f;收到编译请求&#xff0c;之后的操作&#xff1f;…...

    2024/3/4 11:58:25
  2. 如何提高少样本学习中的参数有效性以及数据有效性

    ©原创作者 | 康德 链接&#xff1a; https://arxiv.org/abs/2110.06274 Github: https://github.com/microsoft/LiST 本文提出一种在少样本学习情况下对大型预训练语言模型(PLMs)进行有效微调的方法-LiST。LiST比最近采用提示微调的方法有了显著的改进&#xff0c;主要…...

    2024/3/26 12:43:57
  3. 2022.2.4 BUG日记/学习笔记

    int number"" 可以将int类型转换为String。...

    2024/3/7 8:10:12
  4. 变量的类型

    import com.sun.xml.internal.ws.api.model.wsdl.WSDLOutput; public class Demo06 { //静态的常量 static final double Pi 3.14;//始终不会变的常量 static double salary 20000;//类变量是从属与类的 一起出现一起消失public static void main(String[] args) {int a 1;d…...

    2024/3/7 8:10:11
  5. 使用数据仓库在云端存储数据的优势

    数据仓库 (DW) 是从多个来源收集和管理数据的过程&#xff0c;目的是使企业具备有价值的业务洞察力。数据仓库最常用于集成和分析来自不同来源的公司数据。数据仓库是为数据处理和报告而设计的 BI 系统的核心。 许多公司正在将他们的数据仓库转移到云端&#xff0c;因为本地数据…...

    2024/3/22 17:14:19
  6. 嵌入式c:进制、位、结构体、变量

    1&#xff09;2进制、8进制、16进制的相互转换 二进制和十六进制转化&#xff1a; 同理&#xff0c;二进制转化为八进制可以采用421码来进行&#xff0c;如果让八进制转化为16进制&#xff0c;可以通过二进制为媒介进行转化 电脑计算机进行运算&#xff1a; 2&#xff09;位…...

    2024/3/7 8:10:09
  7. 攻防世界lottery

    进入题目后 老规矩–>目录扫描一波 扫描到一个robots.txt文件 然后发觉里面具有/.git/ 初步想法考察的应该是文件泄露 于是打开GitHack对文件进行恢复 获取到如下的文件 查看config.php后 发觉提示–>flag_price9990000元 初步考虑应该是要–>构造payload从而实现…...

    2024/3/7 8:10:08
  8. RDPSession的远程桌面共享,原生的Microsoft DLL

    Net 3.5框架下运用。 RDPSession 可以用于无人为输入用户名和密码进行远程桌面的连接和共享。 原来在Win10下用visual studio 2019下进行3.5框架运用&#xff0c;但是调用3.5框架下的axRDPViewer会出错&#xff0c;因此改用windows7下的visual studio 2010进行&#xff08;主要…...

    2024/3/7 8:10:08
  9. 攻防世界第三页8分题目

    filemanager 考察点&#xff1a;二次注入代码审计能力 老规矩–>直接进行扫描 发觉存在的目录有 发觉一个www.tar.gz文件 又结合网页中的上传功能 猜到这道题的思路可能是利用这个泄露文件审计其中的代码后,进行成功上传 获取到getshell 于是下载下来看看,开始审计代码 审…...

    2024/3/16 20:55:14
  10. Fiddler 抓包HTTPS包

    1、启用HTTPS 2、安装HTTPS证书 然后一直下一步&#xff0c;直到出现如下图&#xff0c;安装成功 可以抓HTTPS包了...

    2024/3/7 8:10:05
  11. README

    Qt 一些简单例子 介绍 本项目为一些简单的QT 小案例。 博客地址&#xff1a;https://blog.csdn.net/weixin_40909092/article/details/121046738 1 低配版的变量查看窗口 - watch 本节通过一个简单的例子&#xff08;低配版的变量查看窗口&#xff09;来描述 Qt 中模型、视…...

    2024/3/7 8:10:04
  12. windows10家庭版升级与更新问题

    一,家庭版升级为专业版问题 原因:windows其他的软件服务干扰类 解决方法&#xff1a; ①winr–>msconfig ②勾选隐藏所有服务 ③进行全部禁用 ④重启win系统进行更新即可 二,windows家庭版更新问题 解决方法1 清理更新临时文件 步骤: 1.右键点击开始——运行&#xff0c…...

    2024/3/7 8:10:03
  13. Python编程——目录

    Python编程——目录 1、os.mkdir() 2、os.makedirs()...

    2024/3/7 8:10:02
  14. 【智能优化算法】基于鲸鱼算法求解单目标优化问题带工具箱附Matlab代码

    1 简介 &#xff12;&#xff10;&#xff11;&#xff16;年 &#xff2d;&#xff49;&#xff52;&#xff4a;&#xff41;&#xff4c;&#xff49;&#xff4c;&#xff49;等 人通过模仿座头鲸气泡网狩猎策略提出了鲸鱼优化算法&#xff08;&#xff37;&#xff48;&a…...

    2024/3/7 8:10:02
  15. Electron 渲染进程,如何解决require is not defined的问题

    记录一下最近在学习Electron遇到的问题 const mainWindow new BrowserWindow({width: 1050,height: 700,minWidth: 1050,minHeight: 700,webPreferences: {nodeIntegration: true,contextIsolation: false}})// nodeIntegration: true, // nodeIntegration 默认false // 加上…...

    2024/3/7 8:10:00
  16. ArkUI 登录小案例学习

    组件了解 容器/布局相关组件 Column()&#xff1a;列布局&#xff0c;内部组件可水平排序 Row()&#xff1a;行布局&#xff0c;内部组件上下排序 Navigator() 导航组件 Scroll()滚动组件 控件相关组件 Text() &#xff1a;文本组件 TextInput()&#xff1a;文本输入框组件 Bu…...

    2024/3/8 10:14:35
  17. 5.Python基础语法(四)

    目录: Python基础语法(四)13. Python条件语句13.1 最简单的if语句13.2 基本的if语句13.3 复杂if语句13.4 看一看elif的好处13.5 三元表达式Python基础语法(四) 在本文以及接下来的一篇文章里,你将学习Python里的条件语句和循环语句。   首先,我们应该知道程序的三大执行…...

    2024/3/7 8:09:58
  18. CCNP-EIGRP

    2022.2.4 I hope you have the strength to start all over again--愿你有勇气重新开始 •Cisco私有协议•协议号88•EIGRP的管理距离内部AD 90 外部AD 170 汇总AD 5 EIGRP 关键技术 •邻居发现使用hello包发现邻居 •可靠传输协议 (RTP)保证EIGRP的包到达所有的邻居 •D…...

    2024/3/28 0:06:09
  19. linux格式化字符串漏洞

    格式化字符串漏洞 格式化字符串介绍 常见格式化字符串函数 函数基本介绍printf输出到stdoutfprintf输出到指定FILE流vprintf根据参数列表格式化输出到stdoutvfprintf根据参数列表格式化输出到FILE流sprintf输出到字符串snprintf输出指定字节数到字符串vsprintf根据参数列表格…...

    2024/3/14 12:20:57
  20. CSDN的Markdown编辑器用法

    这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注…...

    2024/3/4 11:58:32

最新文章

  1. 高效 CUDA 调试:将 NVIDIA Compute Sanitizer 与 NVIDIA 工具扩展结合使用并创建自定义工具

    高效 CUDA 调试&#xff1a;将 NVIDIA Compute Sanitizer 与 NVIDIA 工具扩展结合使用并创建自定义工具 NVIDIA Compute Sanitizer 是一款功能强大的工具&#xff0c;可以节省您的时间和精力&#xff0c;同时提高 CUDA 应用程序的可靠性和性能。 在 CUDA 环境中调试代码既具有挑…...

    2024/3/28 18:58:37
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 设计模式——观察者模式Observer

    Q&#xff1a;观察者模式属于哪一类设计模式 A&#xff1a;观察者模式属于行为学模式 Q&#xff1a;什么是观察者模式 A&#xff1a;当一个对象的状态发生改变时&#xff0c;所有依赖它的对象都得到通知&#xff0c;并自动更新 观察者模式解析&#xff1a;报纸类维护了一个…...

    2024/3/28 7:29:11
  4. aspect-ratio宽高比

    <div class"wrapper"><div class"item">grid-tamplate-columns&#xff1a;设置容器每列的宽度(项目的宽度)grid-template-rows&#xff1a;设置容器每行的宽度(项目的高度)grid-row-gap&#xff1a;设置每行之间的行间距grid-column-gap&…...

    2024/3/28 14:42:22
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/3/27 10:21:24
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/3/24 20:11:25
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/3/18 12:12:47
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/3/24 20:11:23
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/3/26 20:58:42
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/3/28 17:01:12
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/3/24 5:55:47
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/3/27 10:28:22
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/3/26 23:04:51
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/3/26 11:20:25
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/3/24 20:11:18
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/3/28 9:10:53
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/3/24 20:11:16
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/3/24 20:11:15
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/3/27 7:12:50
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/3/24 20:11:13
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/3/26 11:21:23
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/3/28 18:26:34
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/3/28 12:42:28
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/3/26 9:58:17
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57