管理端初步
This commit is contained in:
+83
-64
@@ -1,41 +1,47 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"fmt"
|
||||
|
||||
_ "github.com/go-sql-driver/mysql"
|
||||
"go.hoteas.com/hotime"
|
||||
"golang.org/x/net/websocket"
|
||||
"time"
|
||||
"fmt"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
appIns := hotime.Application{}
|
||||
i := 0
|
||||
a:=hotime.Map{}
|
||||
a.Get("y")
|
||||
for i:=0;i<300 ;i++ {
|
||||
go func() {
|
||||
for j:=0;j<30 ;j++ {
|
||||
if j/2==0{
|
||||
a.Put("x","1")
|
||||
}else {
|
||||
fmt.Println(a.GetInt64("x"))
|
||||
}
|
||||
|
||||
appIns.SetConnectListener(func(context *hotime.Context) bool {
|
||||
fmt.Println(i)
|
||||
i++
|
||||
//this.HandlerStr = "/test.html"
|
||||
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 {
|
||||
}
|
||||
|
||||
time.Sleep(time.Second*5)
|
||||
|
||||
//appIns := hotime.Application{}
|
||||
//i := 0
|
||||
//
|
||||
//appIns.SetConnectListener(func(context *hotime.Context) bool {
|
||||
// fmt.Println(i)
|
||||
// i++
|
||||
// //this.HandlerStr = "/test.html"
|
||||
// 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)
|
||||
@@ -44,42 +50,55 @@ func main() {
|
||||
// }
|
||||
// return DB
|
||||
//})
|
||||
|
||||
appIns.Run(hotime.Router{
|
||||
"app": hotime.Proj{
|
||||
"index": hotime.Ctr{
|
||||
"test": func(this *hotime.Context) {
|
||||
fmt.Println(this.Db.GetTag())
|
||||
x:=this.Db.Action(func(db hotime.HoTimeDB) bool {
|
||||
|
||||
db.Insert("user",hotime.Map{"unickname":"dasdas"})
|
||||
|
||||
return true
|
||||
})
|
||||
this.Display(5, x)
|
||||
},
|
||||
"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)
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
//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) {
|
||||
// fmt.Println(this.Db.GetTag())
|
||||
// x:=this.Db.Action(func(db hotime.HoTimeDB) bool {
|
||||
//
|
||||
// db.Insert("user",hotime.Map{"unickname":"dasdas"})
|
||||
//
|
||||
// return true
|
||||
// })
|
||||
// this.Display(5, x)
|
||||
// },
|
||||
// "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)
|
||||
// },
|
||||
// },
|
||||
// },
|
||||
//})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user