package main import ( "fmt" "git.sxidc.com/service-supports/ds-sdk/sql" ) func main() { // 必须使用结构指针或者[]指针,要接收返回值 sqlResult, err := sql.ParseSqlResultTag(&ClassInfo{}) if err != nil { panic(err) } printSqlResult(sqlResult) } func printSqlResult(sqlResult *sql.Result) { for fieldName, resultElement := range sqlResult.ResultElement { fmt.Println("---------------------------------------") fmt.Println("Field Name: " + fieldName) switch element := resultElement.(type) { case *sql.Result: fmt.Println("Type: Struct") printSqlResult(element) case *sql.ResultColumn: fmt.Println("Type: Field") fmt.Printf("Name: \"%s\"\n", element.Name) fmt.Printf("ParseTime: \"%s\"\n", element.ParseTime) fmt.Printf("AESKey: \"%s\"\n", element.AESKey) fmt.Printf("SplitWith: \"%s\"\n", element.SplitWith) default: fmt.Println("类型错误") } fmt.Println("---------------------------------------") } }