【p2p、分布式,区块链笔记 Blockchain】truffle004 测试网络项目部署

编写合约

  • 一个简单的Solidity智能合约 Usermap 用于在以太坊区块链上管理用户的ID和名称:

    • 数据存储 : 使用了 mappingarray 两种方式存储用户信息。
    • addUser : 添加用户(id和对应的用户名name)到区块链。
    • getid : 根据用户 id 获取用户名。该函数是 view 类型,表示它不会修改区块链状态。
javascript 复制代码
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.22;

contract Usermap {

    mapping(uint256 => string) public id_of_name;

    struct User {
        uint256 id;
        string name;
    }

    User[] public users;


    function addUser(uint _id,string memory _name) public {
        users.push(User(_id, _name));
        id_of_name[_id] = _name;
    }

    function getid(uint256 _id) public view returns (string memory) {
        return id_of_name[_id];
    }
}

编译

部署

  • 链接钱包
  • 支付合约部署的gas费用

部署完成

  • 可在IDE中直接调用测试:
  • 合约地址为 0xb1771477289aFFC26314C500371434f812211602,可在https://sepolia.basescan.org/中查看所有交易
相关推荐
一條狗36 分钟前
随笔 20250402 分布式 ID 生成器 Snowflake 里面的坑
分布式
小马爱打代码39 分钟前
Kubernetes 中部署 Ceph,构建高可用分布式存储服务
分布式·ceph·kubernetes
码熔burning43 分钟前
【Spring Cloud Alibaba】:Nacos 入门讲解
分布式·spring cloud·微服务
nuo5342021 小时前
黑马 C++ 学习笔记
c语言·c++·笔记·学习
阿噜噜小栈1 小时前
最新国内可用的Docker镜像加速器地址收集
运维·笔记·docker·容器
zhuyixiangyyds10 小时前
day21和day22学习Pandas库
笔记·学习·pandas
jingjingjing111111 小时前
笔记:docker安装(ubuntu 20.04)
笔记·docker·容器
DreamBoy@11 小时前
【408--考研复习笔记】操作系统----知识点速览
笔记
UpUpUp……11 小时前
特殊类的设计/单例模式
开发语言·c++·笔记·单例模式
电星托马斯12 小时前
C++中顺序容器vector、list和deque的使用方法
linux·c语言·c++·windows·笔记·学习·程序人生