将前端打包的dist直接放在项目根目录,和main.go在同一个目录 然后再mian.go中使用 //go:embed dist var FS embed.FS func main() { r := gin.New() fp, _ := fs.Sub(FS, "dist") ...
rust trait
在 Rust 语言中,trait 是一种非常重要的抽象机制,它允许您定义一组类型应该具有的行为(即方法),而不关心这些类型的具体实现。trait 类似于其他编程语言中的接口,但 Rust 的 trait 更加灵活和强大。 下面...
rust impl 带for 与不带for的区别
在Rust中,impl语句用于为类型提供方法实现,而带for和不带for的impl语句在用途和语法上有显著的区别。 不带for的impl: 不带for的impl语句用于为特定类型提供方法实现。它直接指定了要实现的方法和这些...
springBoot项目中使用缓存Cache
前言 缓存可以通过将经常访问的数据存储在内存中,减少底层数据源如数据库的压力,从而有效提高系统的性能和稳定性。我想大家的项目中或多或少都有使用过,我们项目也不例外,但是最近在review公司的代码的时候...
jar包加密防止反编译–classFinal
有这样的需求,我们项目要部署在其他公司的服务器上,但是又不想让外人看到我们的源码。所以要对jar包中的内容进行加密。 加密方式一般有二,一是可以对class文件中的内容进行混淆,对类名和方法名等进行替换...
Java 检查一个方法上是否存在某个注解(annotation)
Method.isAnnotationPresent(Class
golang 接口方法使用泛型
在 Go 语言中,从 Go 1.18 开始支持泛型,这使得接口可以定义使用泛型的方法。泛型允许你编写灵活且可重用的组件,这些组件能够处理多种类型而无需为每种类型重复代码。 下面是一个简单的例子来展示如何定义一...
gorm curd封装
GORM 是一个用于 Go 语言的 ORM(Object-Relational Mapping)库,它简化了数据库操作,允许你用更少的代码完成常见的 CRUD(Create, Read, Update, Delete)操作。下面是如何使用 GORM 封装 CRUD 操作的一个示例...
Rust Ok和Err
在Rust编程语言中,Ok和Err是Result枚举的两种可能值,这个枚举用于错误处理。Ok通常表示一个函数或操作成功完成,并且可以携带一个成功的结果值。下面是如何使用Ok的一些示例和常见场景: 返回类型声明 当你...
Rust中的关键字Some、Option
Rust中的关键字Some、Option 根据Rust本身的设计哲学, 建议在设计某个变量时, 如果预计该变量某时刻可能会是空值(null/None)的话, 那么尽量用Option/Result来包裹它, 反过来说, 只有你可以肯定该变量不可能为空...