E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
跟我学Hyperledger
rust
跟我学
五:是否安装双系统
图为RUST吉祥物大家好,我是get_local_info作者带剑书生,这里用一篇文章讲解get_local_info是怎么得到检测双系统的。首先,先要了解get_local_info是什么?get_local_info是一个获取linux系统信息的rust三方库,并提供一些常用功能,目前版本0.2.4。详细介绍地址:[我的Rust库更新]get_local_info0.2.3-CSDN博客好了,
科比布莱恩特
·
2024-01-18 16:02
rust
开源软件
linux
后端
开发语言
harmonyos
ubuntu
跟我学
c++高级篇——基础类型和POD结构体反射
一、基础类型反射在前面以枚举体和函数进行了反射的实践,在其中也提到过,其实更应该进行反射的是类(结构体)。毕竟现在以面向对象编程基本已经普及,类(结构体)的应用几乎已经是无法避免的。所以对类(后面再提到类即包含结构体)的反射,其实应用的范围会更大。对基础类型和POD类型的结构体进行反射,一般就是下面的情况:1、对名称进行反射来动态获取和创建对象2、对结构体变量的反射这里只是POD类型的结构体,复杂
fpcc
·
2024-01-17 18:32
c++
跟我学
c++中级篇——面向切片编程
一、面向切片AOP,AspectOrientedProgramming,面向切片(面)编程,其实就是一种函数式编程的衍生范型。从名字上其实还是比较容易理解的,如果说分层是从横向切面,那么AOP则是面向纵向切面,也就是说,每个大的功能模块,可以纵向切成多个片(面),在这个片里可以动态的增加处理功能,它可以通过代理接口或者预编译的方式来实现。通过业务逻辑的隔离实现解耦合。举一个简单的例子,如果有几组类
fpcc
·
2024-01-17 18:30
C++11
C++
c++
设计模式
Hyperledger
Fabric工具cryptogen介绍
Hyperledger
Fabric工具cryptogen介绍简介简单的说,cryptogen是用来生产fabric需要的证书的;这个生产过程是静态的。
CodingCode
·
2024-01-17 15:40
春天建议多吃这些菜,搭配木耳,堪称:金不换,排毒养颜女人最爱
想要清爽一夏,这道凉拌木耳绝对不容错过,赶快
跟我学
起来吧~凉拌木耳【烹饪食材】:木耳一大把、大蒜6瓣、干红椒4个、白砂糖20g、米醋20g、芝麻适量、香油20g、生抽
锦绣v山东
·
2024-01-17 10:01
rust
跟我学
:模块编写与使用
图为RUST吉祥物大家好,我是get_local_info作者带剑书生,这里用一篇文章讲解get_local_info中模块的使用。首先,先要了解get_local_info是什么?get_local_info是一个获取linux系统信息的rust三方库,并提供一些常用功能,目前版本0.2.4。详细介绍地址:[我的Rust库更新]get_local_info0.2.3-CSDN博客好了,言规正传,
科比布莱恩特
·
2024-01-17 04:06
rust跟我学
rust
开发语言
后端
开源软件
鸿蒙系统
linux
rust
跟我学
:文件时间属性获得方法
图为RUST吉祥物大家好,我是get_local_info作者带剑书生,这里用一篇文章讲解get_local_info是怎样获得杀毒软件的病毒库时间的。首先,先要了解get_local_info是什么?get_local_info是一个获取linux系统信息的rust三方库,并提供一些常用功能,目前版本0.2.4。详细介绍地址:[我的Rust库更新]get_local_info0.2.3-CSDN
科比布莱恩特
·
2024-01-17 04:06
rust跟我学
linux
运维
服务器
rust
开源软件
后端
开发语言
[通知]rust
跟我学
:文件时间属性获得方法文章已上线
rust
跟我学
:文件时间属性获得方法-CSDN博客
科比布莱恩特
·
2024-01-17 04:35
Rust
linux
rust
开源软件
鸿蒙系统
后端
不言之言,不言之教
孔子无常师,无所不学,此时孔子告诉学生不要只是
跟我学
,世上还有很多值得你们去学的,要向大自然学,向不说话的老师学,如同四季那样,与时偕行,就能生长。故知,世上固有不言之言,不言之教。
五柳_3f09
·
2024-01-17 01:06
为啥你必须要
跟我学
成交?
人生就是一场成交,无时无刻你不在成交别人,当你一开口的那一刻,其实你就在想方设法成交别人了。这句话是林三哥告诉我的,刚听到的时候,我还心里打嘀咕,我说了这么多的话都没见成交谁,他是他,我是我。但此刻,我却无比的相信这句话,并把它刻在我的骨血里。有的时候,就是人太愚昧,才会不知道真相。我说了很多的废话,也在不停地说,然后就把时间都浪费在了这块。还有就是人的本性,好为人师,你总是想把自己的东西分享出去
郝志阳
·
2024-01-15 08:41
八仙全传读后感之二汉钟离
何仙姑对他说,要不
跟我学
道吧,有了道你就不用怕这些东西了,也不需要用蛮力了。汉钟离正在犹豫。结果这是迟那时快,豹子突然从背后扑了过来,把汉钟离扑倒在地,
车车的故事
·
2024-01-14 19:04
跟我学
java|Stream流式编程——并行流
什么是并行流并行流是Java8StreamAPI中的一个特性。它可以将一个流的操作在多个线程上并行执行,以提高处理大量数据时的性能。在传统的顺序流中,所有的操作都是在单个线程上按照顺序执行的。而并行流则会将流的元素分成多个小块,并在多个线程上并行处理这些小块,最后将结果合并起来。这样可以充分利用多核处理器的优势,加快数据处理的速度。要将一个顺序流转换为并行流,只需调用流的parallel()方法即
Jum朱
·
2024-01-14 15:20
java
windows
python
hyperledger
fabric 源码调试(peer)环境搭建教程
前面写了一篇[
hyperledger
fabric源码调试(orderer)环境搭建教程],按照相同的思路,这次来搭建peer的调试环境。部分相同的步骤和讲解请看上一篇,这里不再重新解释。
小蜗牛爬楼梯
·
2024-01-14 13:17
编程与数学、
跟我学
信奥、GOC编程
信奥赛做数学题就是小枪换大炮信奥赛做数学题就是小枪换大炮_哔哩哔哩_bilibili编程与数学中的质数厄拉多塞筛法编程与数学中的质数厄拉多塞筛法_哔哩哔哩_bilibili信奥赛女子专项赛道清华大学的大中计划信奥赛女子专项赛道清华大学的大中计划_哔哩哔哩_bilibili信奥赛的考试机制信奥赛的考试机制_哔哩哔哩_bilibili怎么提高打字速度怎么提高打字速度_哔哩哔哩_bilibili信奥赛等
dllglvzhenfeng
·
2024-01-14 07:15
小学生C++趣味编程
啊哈C语言
小学生C++编程入门
算法
c++
GESP
C++启蒙
C++入门
CSP-J
NOIP
Fabric:链码的部署及执行
Hyperledger
Fabric:V2.5.4写在最前使用Fabric搭建自定义网络参考:https://blog.csdn.net/yeshang_lady/article/details/134113296
Sun_Sherry
·
2024-01-13 19:39
区块链
#
Hyperledger
Fabric
fabric
区块链
Hyperledger
Fabric Java App Demo
编写一个应用程序来连接到fabrc网络中,通过调用智能合约来访问账本.fabricgatewayfabricgateway有两个项目,一个是fabric-gateway-java,一个是fabric-gateway。fabric-gateway-java是比较早的项目,使用起来较为麻烦需要提供一个connection.json配置文件,该配置文件中要详细配置网络中的各个节点的信息。fabric-g
征尘bjajmd
·
2024-01-13 11:52
php
python
开发语言
2019-11-18
篇三七班彭珂妈妈今天周末不上班,所以起床比较晚,吃完早饭孩子在写作业,我和小妮在玩,忽然想起来答应了孩子要去给她们买玩具的,外边又太冷,不想出去,不出去也不行,答应了孩子的事情就一定要做到,要不孩子就该
跟我学
习了
ff891a5205df
·
2024-01-13 09:51
链码 安装-实例化-更新
ecctest实例化peerchaincodeinstantiate-oorderer0.example.com:7050--tlstrue--cafile/opt/gopath/src/github.com/
hyperledger
blockchain_yhj
·
2024-01-13 08:36
fabric
接口
fabric-多通道
区块链
感受笨拙(一)
不知怎的,严师那句话在心里像给我“惊喜”一般准时出现:如果你想弹琴,你
跟我学
,如果你想陶冶情操,你不要
跟我学
。那是我小时候有一次没准备好就去严师家了,每当此时,回家路上总少不了训斥。
刘离开
·
2024-01-12 20:09
Hyperledger
Fabric Orderer 配置解析
文中使用的fabric版本为2.4.1排序节点在Fabric网络中为Peer提供排序服务。与Peer节点类似,排序节点支持从命令行参数、环境变量或配置文件中读取配置信息。环境变量中配置需要以ORDERER_前缀开头,例如,配置文件中的general.ListenAddress项,对应到环境变量ORDERER_GENERAL_LISTENADDRESS。排序节点默认的配置文件读取路径为$FABRIC
征尘bjajmd
·
2024-01-12 20:59
fabric
运维
关于
HyperLedger
Fabric基础内容-gossip
1、fabricgossipFabric通过组件化来分离各个实体,如节点和orderers,orderer提供了ordering服务,节点维持了账本和世界状态(worldstate),同时链码的执行是独立于ordering服务,这种设计的主要目的是为了显著提高可扩展性。但是这种设计就需要一种通信方式来保证各个节点间的消息传播是可信,可扩展的并且是支持拜赞庭容错。用任何中心化通信方式都不能解决可信分
神奇的考拉
·
2024-01-12 15:03
Hyperledger
Fabric 架构概览
fabric版本v2.4.1超级账本Fabric自诞生以来已经发布了两个主要版本:1.0系列版本(2017年7月)和2.0系列版本(2020年1月)。2016年9月,Fabric发布了v0.6.0预览版本,通过这一版本社区收集了大量来自实践的反馈和建议,主要集中在性能、安全、可扩展性等方面。2017年7月推出1.0系列版本,这一版本重新设计了整体架构,改善了可扩展性和安全性,消除了性能瓶颈,首次实
征尘bjajmd
·
2024-01-12 07:38
fabric
架构
运维
跟我学
Git(三)
超强命令:filter-branch如果你需要以某种脚本化的方式重写大量提交(例如,全面修改你的电子邮件地址或从所有提交中删除某个文件),就需要filter-branch,它能够大面积修改你的历史记录。从所有提交中删除某个文件filter-branch是一个可以用来清洗整个历史记录的工具,要想从整个历史记录中删除名为passwords.txt的文件,可以使用filter-branch的--tree
橙皇cc
·
2024-01-12 03:34
跟我学
java|Stream流式编程——Stream 的终端操作
orEach和peekforEach和peek都是StreamAPI中用于遍历流中元素的操作方法,它们在处理流的过程中提供了不同的功能和使用场景。forEach:forEach是一个终端操作方法,它接受一个Consumer函数作为参数,对流中的每个元素执行该函数。它没有返回值,因此无法将操作结果传递给后续操作。forEach会遍历整个流,对每个元素执行相同的操作。示例代码:Listnames=Ar
Jum朱
·
2024-01-11 11:56
学习笔记
java
python
windows
读文有感
曾国潘的御敌之术—守拙,还有阿蒙森第一个将挪威的国旗插在南极点,举例子证明了他的观点,选定头部就专注地死磕,专注让你无敌,迭代让你精进;这个观点和我最近的感悟不谋而合,教书10年,我一直秉持一个原则:孩子要
跟我学
习家长的教育理念和我的不能有冲突
请叫我王青羽
·
2024-01-11 02:30
Hyperledger
Fabric问题汇总
Hyperledger
Fabric2.4.12.3.3问题汇总Ubuntu20.04
Hyperledger
Fabric2.3.3SDK对应的Go1.17.5链码对应的Go1.18Fabric-sdk-go1.0.0Docker20.10.12Docker-Compose2.11.21
後會無期_
·
2024-01-11 01:05
fabric
fabric
区块链
智能合约
Hyperledger
Fabric 通道配置文件解析
fabric版本v2.4.1Fabric网络是分布式系统,采用通道配置(ChannelConfiguration)来定义共享账本的各项行为。通道配置的管理对于网络功能至关重要。通道配置一般包括通道全局配置、排序配置和应用配置等多个层级,这些配置都存放在通道的配置区块内。通道全局配置定义该通道内全局的默认配置,排序配置和应用配置分别管理与排序服务相关配置和与应用组织相关配置。用户可采用configt
征尘bjajmd
·
2024-01-10 20:33
java
数据库
服务器
Hyperledger
Fabric 核心概念与组件
要理解超级账本Fabric的设计,首先要掌握其最基本的核心概念与组件,如节点、交易、排序、共识、通道等。弄清楚这些核心组件的功能,就可以准确把握Fabric的底层运行原理,深入理解其在架构上的设计初衷。知其然,进而可以知其所以然。总体来看,超级账本Fabric面向不同角色的用户提供不同模块功能,这些模块自下而上可以分为三层。●网络层模块:面向系统管理人员。实现P2P网络,提供底层构建区块链网络的基
征尘bjajmd
·
2024-01-10 19:36
fabric
运维
Hyperledger
Fabric 消息协议
Fabric中大量采用了gRPC消息在不同组件之间进行通信交互,主要包括如下几种情况:客户端访问Peer节点,客户端和Peer节点访问排序节点,链码容器与Peer节点交互,以及多个Peer节点之间的Gossip交互。消息结构除了Peer节点之间的Gossip通信外,大多都采用了信封(Envelope)结构来对消息进行封装.普通信封结构并不复杂,包括一个载荷(Payload)域存放数据,以及对载荷域
征尘bjajmd
·
2024-01-10 19:06
fabric
运维
20190223觉察
当时还没有察觉到什么,现在这两天来看,他有时候大声说话是
跟我学
的。孩子就是父母的一面镜子,的却如此。我想我得换一种方式来跟他沟通玩游戏的事了。今日脑中心收获:大脑处于放松状态,
Christina_b6c3
·
2024-01-10 19:11
Hyperledger
Fabric-成员服务提供者 (MSP)
为什么需要MSP?因为Fabric是一个认证性的网络,所以区块链参与者需要一种向网络中的其他参与者证实自己身份的机制从而在网络中进行交易。如果你已经阅读文档身份,你会看到公钥基础结构如何通过信任链提供可认证的身份信息。那么区块链网络是怎么应用信任链的?证书机构通过生成可以用来证实身份的由公钥和私钥形成的键值对来发放认证信息。因为一个私钥永远不会被公开,所以引入了一种可以证实身份的机制即MSP。例如
齐樾2ed
·
2024-01-10 09:23
【
hyperledger
-fabric】使用couchDB
简介本文章主要参考来自于官方文档使用CouchDB以及https://www.bilibili.com/video/BV1Li4y1f7ex/?spm_id_from=pageDriver&vd_source=2c5f2831e1c63d3a20045b167ae044e6B站视频,还是非常感谢up主提供了学习的思路。为什么要使用couchDB?原文:Fabric支持两种类型的节点状态数据库。Le
兜里旺仔没加糖
·
2024-01-10 07:02
fabric
couchdb
运维
区块链5大巨头横向对比
由于对未来价值的“共识”,很多厂商推出了自己的联盟链框架或平台,本文选择了
Hyperledger
Fabric、FISCOBCOS、微软的Coco、企业以太坊联盟(EEA)及R
无言以越
·
2024-01-10 03:58
跟我学
国学,常爸小古文笔记|第3篇:爱人者,人恒爱之;敬人者,人恒敬之
近日,在和孩子一起看《常爸小古文》。我们以为,古文一定很艰涩,但常爸却用一种孩子能听得懂的方式来讲述典故,无形中让孩子懂得了生活的经验、人和人的相处之道、正确的求学态度、高尚的个人品格和宏大的人生格局!古人总结的智慧受用无穷,无论是孩子还是成人。于是决定做一份《常爸小古文》的笔记,不仅能更从容地应对孩子成长中的“小烦恼”,也能用古人智慧来渡自己!——何小河常爸小古文第三篇30-3文|何小河,7年亲
何小河vicky
·
2024-01-09 20:47
Hyperledger
Fabric 自动发现网络信息 discover 工具使用
客户端要往Fabric网络中发送请求,首先需要知道网络的相关信息,如网络中成员组织信息、背书节点的地址、链码安装信息等。在Fabricv1.2.0版本之前,这些信息需要调用者手动指定,容易出错;另外,当网络中信息变更后(如节点上下线)还需要再次更新。为了解决这些问题,社区自v1.2.0版本开始在Peer节点上提供DiscoverygRPC服务,并编写了discover客户端工具(入口位于disco
征尘bjajmd
·
2024-01-09 20:23
php
服务器
apache
Hyperledger
Fabric 生成组织身份解析
fabric版本2.4.1Fabric网络通过证书和密钥来管理和认证成员身份,经常需要生成证书文件。通常这些操作可以使用PKI服务(如Fabric-CA)或者OpenSSL工具来实现(针对单个证书的签发)。为了方便批量管理组织证书,Fabric基于Go语言的标准crypto库提供了cryptogen(cryptogenerator)工具。cryptogen可以根据指定配置批量生成所需要的密钥和证书
征尘bjajmd
·
2024-01-09 18:43
php
https
数据库
Hyperledger
Fabric 1.3 特性调研之Identity Mixer(一)
Idemix(IdentityMixer)是一套协议加密组件,提供更强大的身份验证和隐私保护特性。适用场景用户发送交易时,需要隐藏自己的身份信息,并且不希望其他人通过追踪交易记录查找到自己发送的交易。即用户的保密要求比较严格,具体为用户在需要以下保密要求时,建议使用该功能:匿名性(anonymity):不暴露交易者的身份;无关联性(unlinkability):无法通过多个交易确定发送者身份,即一
RaeSnow
·
2024-01-09 17:44
Hyperledger
Fabric使用Java自定义智能合约
文章目录
Hyperledger
Fabric使用Java自定义智能合约一、前提二、我的主要文件目录三、开始啦1、启动测试网络2、创建通道3、配置环境变量4、合约代码5、打包合约源代码6、安装链码7、查看已安装的合约清单
Mae_strive
·
2024-01-09 15:16
区块链
fabric
linux
ssh
Hyperledger
fabric部署链码(一)打包链码
1启动测试网络我们将从部署Fabric测试网络实例开始。开始之前,请参照上文部署测试环境。使用以下命令导航到本地fabric-samples库中的测试网络目录:cdfabric-samples/test-network从零开始前,我们将确保fabric测试环境已关闭./network.shdown使用以下命令启动fabric测试环境./network.shupcreateChannelcreate
奇点与原石
·
2024-01-09 15:15
fabric
go
智能合约
web3
Hyperledger
fabric部署链码(二)安装链码到fabric
打包智能合约asset-transfer(basic)后,我们就可以在peer上安装链码。链码需要安装在每一个为交易背书的peer节点上。由于我们的测试网络设置的背书策略,要求来自Org1和Org2的背书,因此我们需要在这两个组织运营的peer节点上安装链码:peer0.org1.example.compeer0.org2.example.com我们先在Org1peer安装链码,设置Org2pee
奇点与原石
·
2024-01-09 15:15
fabric
区块链
golang
智能合约
hyperledger
fabric生产环境搭建
hyperledger
fabric生产环境搭建本教程搭建了三组织org0具备一个orderer组织org1和org2具有两个peer节点通过cryptogen生成msp证书cryptogenshowtemplate
沈卿-
·
2024-01-09 15:45
fabric
运维
网络
Hyperledger
Fabric 入门笔记(七)Fabric V2.4 测试网络进阶之链码使用
文章目录前言一、使用CouchDB1.1.用例说明1.2.索引1.3.准备工作1.4.CouchDBFauxton接口1.5.运行用例1.5.1.选择器1.5.2.分页1.5.3.历史记录二、使用私有数据2.1.用例说明2.2.私有数据集合2.2.1.集合定义文件2.2.2.私有数据的索引2.3.准备工作2.4.注册身份2.5.运行用例2.5.1.创建私有数据2.5.2.查询私有数据2.5.2.1
荆棘鸟骑士
·
2024-01-09 15:45
Hyperledger
Fabric
fabric
区块链
Hyperledger
2.0 链码安装
文章目录简介packageinstallapproveformyorgcommit半自动化安装链码简介以Hyperldger2.0为例,链码的安装主要分为以下几部分:package:打包源代码install:安装链码approveformyorg:节点所在组织审批链码commit:提交链码在完成之后可以执行链码的查询和调用package首先需要对合约进行编译,首先把我们写的go语言合约放到chai
LamaxiyaFc
·
2024-01-09 15:44
区块链内容
区块链
超级账本(
Hyperledger
Fabric)—Jar方式安装合约
Jar方式安装合约1打包智能合约1.1上传jar1.2返回到test-network所在目录,启动测试网络1.3将bin目录中二进制文件添加到CLI路径1.4设置FABRIC_CFG_PATH为指向fabric-samples中的core.yaml文件1.5创建链码包2安装链码包2.1Org1peer节点安装链码2.2Org2peer节点安装链码3通过链码定义3.1查询包ID3.2Org2通过链码
唯代码动人心
·
2024-01-09 15:44
区块链
fabric
区块链
Hyperledger
Fabric 管理链码 peer lifecycle chaincode 指令使用
链上代码(Chaincode)简称链码,包括系统链码和用户链码。系统链码(SystemChaincode)指的是FabricPeer中负责系统配置、查询、背书、验证等平台功能的代码逻辑,运行在Peer进程内,将在第14章介绍。用户链码指的是用户编写的用来实现智能合约的应用代码。如无特殊说明,链码一般指的就是用户链码。链码被部署在Peer节点上,运行在独立的沙盒(目前为Docker容器)中,并通过g
征尘bjajmd
·
2024-01-09 15:07
windows
microsoft
Hyperledger
Fabric 核心概念与组件
Hyperledger
Fabric核心概念与组件要理解超级账本Fabric的设计,首先要掌握其最基本的核心概念与组件,如节点、交易、排序、共识、通道等。
黑帽子技术
·
2024-01-09 12:26
网络
大数据
分布式
编程语言
区块链
Hyperledger
Fabric权限管理和策略
权限管理是区块链网络十分重要的功能,负责控制某个身份在某个场景下是否允许采取某个操作(如读写某个资源)。超级账本Fabric项目通过策略(Policy)来灵活指定各场景下的操作权限。策略应用场景具体来看,常见的策略场景包括如下表所示。其中,大部分都与系统配置链码相关,可以在通道配置中进行指定;部分为代码中的规定。对于存储在通道配置中的策略,可以利用configtx.yaml指定,在生成新建通道交易
乌苏舞
·
2024-01-09 12:25
区块链
fabric
策略
基于
Hyperledger
Fabric的学位学历认证管理系统
基于
Hyperledger
Fabric的学位学历认证管理系统项目源码:https://github.com/Pistachiout/Academic-Degree-BlockChain一、选题背景学历造假
Pistachiout
·
2024-01-09 12:54
#
Linux项目
#
区块链项目
fabric
区块链
docker
Hyperledger
Fabric 入门笔记(二)Fabric V2.5 总结
1.1.分布式账本1.2.智能合约1.3.共识Consensus二、
Hyperledger
Fabric的特点2.1.许可区块链2.2.模块化2.3.共识机制2.4.链码2.5.隐私和保密三、Fabric
荆棘鸟骑士
·
2024-01-09 12:54
Hyperledger
Fabric
fabric
区块链
Hyperledger
Fabric 链码生命周期
目录一、什么是链码二、部署链码2.1安装和定义链码2.1.1打包智能合约2.1.2peer节点安装链码2.1.3组织批准链码2.1.4将链码提交到通道2.2升级链码总结一、什么是链码ChainCode(链码)是一个程序,用Go、Node.js或Java编写,实现了规定的接口。ChainCode运行在一个安全的Docker容器中与背书节点相隔离,ChainCode通过应用程序提交的交易来初始化和管理
Big. boss
·
2024-01-09 12:22
区块链
hyperledger
fabric
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他