【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/中查看所有交易
相关推荐
程序员夏末8 小时前
【LeetCode | 第七篇】算法笔记
笔记·算法·leetcode
小江的记录本9 小时前
【事务】Spring Framework核心——事务管理:ACID特性、隔离级别、传播行为、@Transactional底层原理、失效场景
java·数据库·分布式·后端·sql·spring·面试
开源盛世!!9 小时前
3.23-3.25笔记
笔记
hanlin0311 小时前
刷题笔记:力扣第43、67题(字符串计算)
笔记·算法·leetcode
多看书少吃饭11 小时前
Vue + Java + Python 打造企业级 AI 知识库与任务分发系统(RAG架构全解析)
java·vue.js·笔记
了一梨12 小时前
[T113] 交叉编译 OpenCV 4.5.2 + face 模块
linux·笔记·opencv
困死,根本不会12 小时前
VMware Ubuntu 显示有线连接却无法上网|完整排查与解决笔记
linux·笔记·ubuntu
左左右右左右摇晃13 小时前
数据结构——栈
数据结构·笔记
半桶水专家13 小时前
Kafka 性能瓶颈 → JMX 指标对照表
分布式·kafka
左左右右左右摇晃13 小时前
数据结构——树
数据结构·笔记