Golang中国

aaa

Golang China 第 6095 号会员,加入于 2016-09-23 11:17


aaa最近回复了


回复了 aaa 创建的主题: 哪个GUI包支持win xp和win 2003系统? 2017-04-22 10:01

用QML……

回复了 netaxcess 创建的主题: panic: Error 1461: Can't create more than max_prepared_stmt_count statements (current value: 16382) 2017-02-16 11:57

你根本就没搞明白Prepare的意义. 他只有一个用途,就是批量写, 批量执行, 只调用一次Prepare

所以:
你把所有的Prepare全部拿到for循环之外;
然后疯狂的在FOR里面EXEC吧;

附加评注:  你这代码写的惊天地泣鬼神. 能不能把常用函数封装一下;
回复了 netaxcess 创建的主题: panic: Error 1461: Can't create more than max_prepared_stmt_count statements (current value: 16382) 2017-02-16 11:54

你这代码写的,就不能把常用的工具封装一下, 看的头疼;

回复了 Zhangyc310 创建的主题: 不使用`http.ListenAndServe`,使用`net.Listen`创建一个listener,然后采用`http.Serve`,是怎样使用的啊? 2017-02-16 11:21

都是NET包, HTTP包就是对NET包的封装.
你可以不用官方封装, 直接监听80端口,自己实现HTTP那些规则.

回复了 loklokou 创建的主题: 求助函数如何实现返回本例“package.().()”的执行方式 2017-02-16 11:16
type aaa map[string]string

func p1(a string) aaa {
    condition = aaa{}
    condition [“p1”] = a
    return condition
}

func (this aaa) p2(a string) map[string]string{

    this[“p2”] = a

    return map[string]string(this)
}
回复了 aaa 创建的主题: 如何判断一个interface{}所持有的值是否为其类型的零值? 2017-02-12 10:40
        switch val := fv.Interface(); f.Type.Kind(){
            case reflect.String:
                if !reflect.DeepEqual(val,""){
                    continue
                }
            case reflect.Struct:
                if ty.String() == "time.Time" {
                    if reflect.DeepEqual(val,time.Time{}){
                        continue
                    }
                }
            case  reflect.Int, reflect.Int64, reflect.Int32, reflect.Int8, reflect.Int16,reflect.Uint,reflect.Uint8, 
                  reflect.Uint16, reflect.Uint32, reflect.Uint64,reflect.Float32, reflect.Float64:
                if !reflect.DeepEqual(val,0){
                    continue
                }
        }

我执行一条SQL命令, 经过多少次switch 和 for 大循环; 不断反射,…………………….
我都开始怀疑人生了…………..
我都开始怀疑人生了…………..
我都开始怀疑人生了…………..
我都开始怀疑人生了…………..
我都开始怀疑人生了…………..

回复了 dyllen 创建的主题: go web自定义路由,可以用http.FileServer处理静态文件吗?我的好像不行呀! 2017-02-11 18:41

package frame

// 报头数据类型: Header:ContentType
var ContentType = map[string]string{
//媒体格式
“html”: “text/html;charset=utf-8”,
“xml”: “text/xml”,
“css”: “text/css”,
“js”: “text/javascript”, //“application/javascript” 这种方式IE 678不支持; 暂时统一用这种就好, 而新规application/javascript比较正确,本来JS就是数据类型;
“txt”: “text/plain”,
“png”: “image/png”,
“jpg”: “image/jpeg”,
“gif”: “image/gif”,
//数据格式
“zip”: “application/zip”,
“gzip”: “application/gzip”,
“json”: “application/json”, //这可不JS
}

回复了 yutian 创建的主题: beego orm如何实现部分更新 2017-02-11 18:33

….

回复了 dyllen 创建的主题: go web自定义路由,可以用http.FileServer处理静态文件吗?我的好像不行呀! 2017-02-11 17:13

http.ServeFile(w, r, “.”+path)

回复了 dyllen 创建的主题: go web自定义路由,可以用http.FileServer处理静态文件吗?我的好像不行呀! 2017-02-11 17:11
// 静态WEB服务:
func (this *HttpHandler) serveStatic(w http.ResponseWriter, r *http.Request) bool {
    path := r.URL.Path
    if path == `` || path == `/` {
        return false
    }
    //判断是否支持GZIP压缩; //测试表明浏览器第一个都是gzip; 不排除特殊的,暂时不考虑;
    isGzip := Config.Http.Gzip && strings.HasPrefix(r.Header.Get("Accept-Encoding"), "gzip")
    w.Header().Set("Content-Type", "text/html;charset=utf-8")

    // 以前缀
    if strings.HasPrefix(path, Config.Http.StaticDir) {
        // 获取后缀
        strs := strings.Split(path, `.`)
        if len(strs) == 1 {
            return false
        }
        //'正则替换下OK'
        if isGzip && regexp.MustCompile(`(^|,)`+strs[1]+`[,$]`).MatchString("html,htm,txt,js,json,xml") {
            // 读取文件
            data, err := ioutil.ReadFile(`.` + path)

            if err != nil {
                http.NotFoundHandler().ServeHTTP(w, r)
                // 这里需要日志系统;
                return true
            }
            //GZIP压缩;

            if tp, ok := ContentType[strs[1]]; /*vars*/ ok {
                w.Header().Set("Content-Type", tp)
            } else {
            //暂时 text/html报头
                w.Header().Set("Content-Type", "text/html;charset=utf-8")
            }

            // 这里也要设置的, 否则GOLANG根据文件头来决定返回什么格式;而这种,即使是图片,也会是text返回
            w.Header().Set("Content-Encoding", "gzip")
            w.Header().Set("Vary", "Content-Encoding")


            wbuf := &bytes.Buffer{}
            g, _ := gzip.NewWriterLevel(wbuf, 9)
            g.Write(data)
            g.Close()
            //Print(buf)
            w.Write(wbuf.Bytes())
            return true
        }
        http.ServeFile(w, r, "."+path)
        return true
    }

    // 根路径; || path == "/wpad.dat"  我发现会访问这个文件: 以后研究这个问题
    if path == "/favicon.ico" || path == "robots.txt" || path == "/wpad.dat" {
        http.ServeFile(w, r, "."+path)
        return true
    }
    return false
    // 日志系统呢? 静态文件就不要日志系统吧,没有必要;
}
aaa 创建的更多回复