go-demo
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

80 lines
1.6 KiB

// 包名
package main
import (
"fmt"
"io/ioutil"
"encoding/json"
"./path"
"./runtime"
"time"
"./pk10"
"./db"
)
func readJSON(file string) []map[string][]interface{} {
log := fmt.Println
jsondata, _ := ioutil.ReadFile(file)
var user []map[string][]interface{}
err := json.Unmarshal(jsondata, &user)
if err != nil {
log(err)
return nil
}
return user
}
// https://studygolang.com/pkgdoc
func main() {
log := fmt.Println
pk10.Log()
var isConnect bool= db.InitDB()
if isConnect {
// define a user data
var user db.User
user.UserName="dsad"
user.Password="123"
// insert user data
runtime.Time("插入一个User数据",func () {
db.InsertUser(user)
})
log("fuck")
var allUsers []db.User
runtime.Time("查询所有用户",func () {
allUsers = db.SelectAllUser()
})
// 这么取出结构体的值
log(allUsers[0].Id)
return
}else {
log("数据库未连接,其实不用这么判断,但是任性")
return
}
//we are test now
// pk10.Init()
var allArray []map[string][]interface{}
runtime.Time("加载JSON数据",func () {
var parhArray = path.Output(".\\data")
for _, filePath := range parhArray {
str := path.Abs("./"+filePath)
log("正在读取:",str)
oneData := readJSON(str)
if oneData != nil {
for _, item := range oneData {
allArray = append(allArray,item)
}
}
}
log("长度: ", len(allArray))
runtime.Time("遍历所有的数据",func () {
sum := 0
for _, item := range allArray {
if item!=nil {
sum++
}
time.Sleep(2)
}
log("长度: ", sum)
})
})
}