Go教程技术文章
-
用指针类型(如*string)可区分null与空字符串,但无法区分null与字段缺失;需结合json.RawMessage或自定义UnmarshalJSON/MarshalJSON实现三态区分。306 收藏 -
reflect.Type.Method和reflect.Type.MethodByName有什么区别直接说结论:Method按索引取,MethodByName按名字查;前者只返回导出方法(首字母大写),后者对未导出方法返回零值。很多人以为MethodByName能拿到私有方法,其实不能——Go的反射严格遵循可见性规则。常见错误现象:MethodByName("foo")返回nil,但结构体里明明定义了func(t*T)foo(){}——问题八成出在foo是小写开头。249 收藏 -
部署Go应用需先编译为静态二进制文件,再传输至服务器,通过systemd或Docker等工具管理进程,配合Nginx/Caddy实现反向代理,并利用Prometheus、Grafana和ELK等工具进行日志与监控,确保稳定运行。241 收藏