main.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package main
  2. import (
  3. "bufio"
  4. "go-create/configs"
  5. "go-create/service"
  6. "go-create/tmpl"
  7. "go-create/util"
  8. "html/template"
  9. "os"
  10. )
  11. func init() {
  12. configs.ConfigInit()
  13. }
  14. func main() {
  15. //初始化
  16. util.InitMTableArray(configs.Engine)
  17. service.InitTable()
  18. //执行生成,go
  19. //util.MysqlToStruct()
  20. //util.MysqlToDao()
  21. //util.MysqlToBaseCRUDRouter()
  22. //执行生成,vue
  23. //util.MysqlToVueApi()
  24. }
  25. // LoadStructTemplate 加载结构体生成模板
  26. func LoadStructTemplate(url string) {
  27. os.Truncate(url, 0)
  28. file, _ := os.OpenFile(url, os.O_CREATE|os.O_RDWR, 0666)
  29. defer file.Close()
  30. //os.Stdout
  31. writer := bufio.NewWriter(file)
  32. t, err := template.ParseFiles("./tmpl/struct.go.template")
  33. if err != nil {
  34. panic(err)
  35. }
  36. err = t.Execute(writer, tmpl.MTables)
  37. if err != nil {
  38. panic(err)
  39. }
  40. }
  41. // LoadDaoTemplate 加载Dao生成模板
  42. func LoadDaoTemplate(url string) {
  43. os.Truncate(url, 0)
  44. file, _ := os.OpenFile(url, os.O_CREATE|os.O_RDWR, 0666)
  45. defer file.Close()
  46. writer := bufio.NewWriterSize(file, 1<<31)
  47. t, err := template.ParseFiles("./tmpl/dao.go.template")
  48. if err != nil {
  49. panic(err)
  50. }
  51. err = t.Execute(writer, tmpl.MTables)
  52. if err != nil {
  53. panic(err)
  54. }
  55. }