golang在做数据库操作的时候,一般使用sql.NullString、sql.NullInt64等来解决空值的处理问题。

但是使用sql.NullString后,在进行json转换时会变成{"String":"xxxx","Valid":"true"},这不是我们想要的结果。

 

解决方案:对sql.NullString进行了继承扩展,重写json的mash和unmash方法。

具体参考github源码:

https://github.com/rhaseven7h/sqljson