This commit is contained in:
hoteas 2017-08-17 02:37:00 +00:00
parent 338bfd7040
commit dde3586db4
3 changed files with 104 additions and 0 deletions

View File

@ -0,0 +1,18 @@
{
"cacheLongTime": 2592000,
"cacheShortTime": 7200,
"dbHost": "127.0.0.1",
"dbName": "test",
"dbPort": "3306",
"dbPwd": "root",
"dbUser": "root",
"defFile": [
"index.html",
"index.htm"
],
"error": {},
"logLevel": 0,
"port": "80",
"sessionName": "HOTIME",
"tpt": "tpt"
}

76
example/main.go Normal file
View File

@ -0,0 +1,76 @@
package main
import (
"database/sql"
"fmt"
"go.hoteas.com/hotime"
"golang.org/x/net/websocket"
)
func main() {
appIns := hotime.Application{}
i := 0
appIns.SetConnectListener(func(context hotime.Context) bool {
fmt.Println(i)
i++
return true
})
//手动模式,
appIns.SetConfig()
appIns.SetConnectDB(func(err ...*hotime.Error) *sql.DB {
query := appIns.Config.GetString("dbUser") + ":" + appIns.Config.GetString("dbPwd") +
"@tcp(" + appIns.Config.GetString("dbHost") + ":" + appIns.Config.GetString("dbPort") + ")/" + appIns.Config.GetString("dbName") + "?charset=utf8"
DB, e := sql.Open("mysql", query)
if e != nil && len(err) != 0 {
err[0].SetError(e)
}
return DB
})
appIns.SetSession(hotime.CacheIns(&hotime.CacheMemory{}), hotime.CacheIns(&hotime.CacheDb{Db: &appIns.Db, Time: appIns.Config.GetInt64("cacheTime")}))
appIns.SetCache(hotime.CacheIns(&hotime.CacheMemory{}))
//快捷模式
//appIns.SetDefault(func(err ...*hotime.Error) *sql.DB {
// query := appIns.Config.GetString("dbUser") + ":" + appIns.Config.GetString("dbPwd") +
// "@tcp(" + appIns.Config.GetString("dbHost") + ":" + appIns.Config.GetString("dbPort") + ")/" + appIns.Config.GetString("dbName") + "?charset=utf8"
// DB, e := sql.Open("mysql", query)
// if e != nil && len(err) != 0 {
// err[0].SetError(e)
// }
// return DB
//})
appIns.Run(hotime.Router{
"app": hotime.Proj{
"index": hotime.Ctr{
"test": func(this *hotime.Context) {
this.Display(0, "chenggong")
},
"websocket": func(this *hotime.Context) {
hdler:=websocket.Handler(func(ws *websocket.Conn) {
for true {
msg := make([]byte, 5120)
n, err := ws.Read(msg)
if err != nil {
return
}
fmt.Printf("Receive: %s\n", msg[:n])
send_msg := "[" + string(msg[:n]) + "]"
m, err := ws.Write([]byte(send_msg))
if err != nil {
return
}
fmt.Printf("Send: %s\n", msg[:m])
}
})
hdler.ServeHTTP(this.Resp,this.Req)
},
},
},
})
}

10
example/tpt/index.html Normal file
View File

@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
</body>
</html>