随笔分类 - go学习
摘要:1. import 导包方式 在 Solidity 中,import 用于引入其他合约或库文件,以便在当前合约中使用它们的功能。import 语句可以用于引入本地文件或远程文件。 语法 // 引入本地文件 import "./MyContract.sol"; // 引入远程文件 import "ht
阅读全文
摘要:🧾 1. 合约收款方式 payable修饰符 function funcName() public payable() { } 🔹 receive() 函数 ✅ 用途 当合约收到纯 ETH 转账(例如 address(this).transfer() 或 address(this).send()
阅读全文
摘要:event 是 Solidity 提供的一种日志机制,可以在链上记录特定行为(比如转账、投票、交易等)。它们被写入到交易日志(transaction logs)中,可以被客户端或监听程序(如 DApp)读取和响应。 🛠️ 定义方式 event 事件名(参数类型 参数名, ...); 🔸 举个例子
阅读全文
摘要:1. 什么是全局变量? Solidity 提供了一些内置的 全局变量(Global Variables),用于访问区块链状态、交易信息等数据。这些变量不需要额外声明,可以在智能合约中直接调用。 2. 主要全局变量分类 Solidity 全局变量主要分为以下几类: 2.1 区块信息(Block Inf
阅读全文
摘要:log.Fatal 是 Go 语言标准库中的一个函数,它的含义和作用如下: 基本含义 log.Fatal 会: 打印错误信息到标准错误输出 调用 os.Exit(1) 立即终止程序 语法 log.Fatal(v ...interface{}) 使用场景 log.Fatal 通常用于: 程序初始化失败
阅读全文
摘要:panic 是 Go 语言中的一种运行时错误处理机制,用于处理程序中的异常情况。 基本含义 panic 会: 立即停止当前函数的执行 开始执行 defer 函数(如果有的话) 向上传播到调用栈,逐层执行 defer 如果到达 main 函数,程序会崩溃并退出 语法 panic(interface{}
阅读全文
摘要:在 GORM 中,加 Model 与不加 Model 有以下差异: 1. 语法差异 不加 Model(直接查询) err := DB.Where("username=? and password =?", n, p).First(&uResult) 加 Model(显式指定模型) err := DB
阅读全文
摘要:sprintf 是 C 语言中的字符串格式化函数,在 Go 语言中对应的是 fmt.Sprintf。以下是详细用法: Go 语言中的 fmt.Sprintf 基本语法 fmt.Sprintf(format string, a ...interface{}) string 常用格式说明符 1. 字符串
阅读全文
摘要:Gorm教程 - 关联 多对一 FOREIGN KEY: 一个表中的 FOREIGN KEY 指向另一个表中的 UNIQUE KEY(唯一约束的键)。 REFERENCES: 确定外键指向的另外一个表的字段 belongs to 会与另一个模型建立了一对一的连接。 这种模型的每一个实例都“属于”另一
阅读全文
摘要:Gorm教程 - 入门 官方文档 安装 go get -u gorm.io/gorm go get -u gorm.io/driver/sqlite go get -u gorm.io/driver/mysql 模型定义 type User struct { ID uint // Standard
阅读全文
摘要:Gorm教程 - CRUD 创建 创建记录 user := User{Name: "Jinzhu", Age: 18, Birthday: time.Now()} result := db.Create(&user) // 通过数据的指针来创建 user.ID // 返回插入数据的主键 result
阅读全文
摘要:Gin中间件开发与鉴权实践 1. 中间件执行流程 [客户端请求] ↓ [Logger中间件] → 记录请求开始时间 ↓ [CORS中间件] → 处理跨域请求 ↓ [JWT鉴权] → 验证访问令牌 ↓ [RBAC鉴权] → 校验用户权限 ↓ [业务处理] → 核心业务逻辑 ↓ [Logger中间件]
阅读全文
摘要:Gin 路由配置与参数解析详解 1. 路由定义方式 // 基础路由示例 router.GET("/welcome", func(c *gin.Context) { firstName := c.DefaultQuery("firstname", "Guest") c.String(http.Stat
阅读全文
摘要:go-zero API语法与路由配置详解 1. API定义文件规范 // api/user.api syntax = "v1" type LoginReq { Username string `json:"username"` Password string `json:"password"` }
阅读全文
摘要:Gin框架介绍 介绍 Gin 是一个用 Go (Golang) 编写的 Web 框架。 它具有类似 martini 的 API,性能要好得多,多亏了 httprouter,速度提高了 40 倍。 快速入门 安装gin go get -u github.com/gin-gonic/gin 引入gin
阅读全文

浙公网安备 33010602011771号