template

package
v2.1.41 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 22, 2024 License: Apache-2.0 Imports: 12 Imported by: 0

README

<%: func FromREADME(buffer *bytes.Buffer) %>

项目名称

请介绍一下你的项目吧

目录结构

使用三层架构(http服务: api->biz->dal,rpc服务: rpc->biz->dal):

  • api(rpc) 接口表示层 Application Programming Interface
    • 定义接口名称,校验入参,调用biz层方法处理业务逻辑并返回响应数据
    • 只能调用biz层方法,禁止调用dal层方法
  • biz 业务逻辑层 Business Logic Layer
    • 业务逻辑处理层,接收api层传入的参数结合调用dal层方法完成业务逻辑处理并返回必要数据
    • 禁止调用api层方法
  • dal 数据访问层 Data Access Layer
    • 负责对DB的访问,本层禁止相互的方法调用
    • 禁止调用api和biz层方法

目录结构说明:

├── app                  // 源代码
│  ├── api               // 接口表示层,无http服务的话删除此文件夹
│  ├── rpc               // rpc服务表示层,无rpc服务删除此文件夹
│  ├── biz               // 业务逻辑层
│  ├── dal               // 数据访问层
│  ├── middleware        // 中间件
│  ├── cmd               // 任务启动入口和定义各组件初始化方法
│  │  ├── api.go
│  │  ├── init.go
│  │  └── job.go
│  ├── conf              // 配置文件
│  │  ├── base.go        // 基本配置
│  │  └── local.go       // 用于本地调试配置文件,本地环境变量需要设置RUN_TIME=local
│  ├── errcode           // 错误和错误码定义
│  │  └── errcode.go
│  ├── job               // 任务定义入口,定时任务、一次性任务、消费队列任务
│  ├── param             // 入参和出参结构体定义
│  │  └── user.go
│  ├── pkg               // 依赖包和三方包
│  │  ├── locationtools  // 三方包封装示例
│  │  │  └── country.go
│  │  └── util           // 实现的常用方法
│  │      └── util.go
│  ├── route             // 路由定义
│  │   └── routers
│  ├── go.mod
│  ├── go.mod
│  └── main.go           // 入口文件
├── .gitignore
├── CODEOWNERS           // 用来定义谁负责仓库中的特定文件或目录
├── Dockerfile
└── README.md

PS:使用tree工具生成目录结构 'tree -d'

运行条件

列出运行该项目所必须的条件和相关依赖

  • 条件一
  • 条件二
  • 条件三

运行说明

说明如何运行和使用你的项目,建议给出具体的步骤说明

  • 操作一
  • 操作二
  • 操作三

测试说明

如果有测试相关内容需要说明,请填写在这里

技术架构

使用的技术框架或系统架构图等相关说明,请填写在这里

协作者

高效的协作会激发无尽的创造力,将他们的名字记录在这里吧

Documentation

Overview

Code generated by hero. DO NOT EDIT!

Code generated by hero. DO NOT EDIT!

Code generated by hero. DO NOT EDIT!

Code generated by hero. DO NOT EDIT!

Code generated by hero. DO NOT EDIT!

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateCode added in v2.0.2

func CreateCode(root, sourceCodeRoot, name string, config *conf.GoCore)

CreateCode 更具配置文件生成项目 模板引擎生成语句 hero -source=./tools/gocore/template -extensions=.got,.md,.docker

func CreateField

func CreateField(field string) string

CreateField 创建gorm对应的字段

func FromApi

func FromApi(name, handler, apiContent string, comments []string, functions []string, req []string, buffer *bytes.Buffer)

func FromApiRequest

func FromApiRequest(request, params string, buffer *bytes.Buffer)

func FromApiRoutes

func FromApiRoutes(name, routes string, buffer *bytes.Buffer)

func FromCmdApi

func FromCmdApi(projectName string, buffer *bytes.Buffer)

func FromCmdCronJob

func FromCmdCronJob(name, cronjobs string, buffer *bytes.Buffer)

func FromCmdInit

func FromCmdInit(name, pkgs, dbUpdate, initDb, initCache, dbUpdateRedis string, buffer *bytes.Buffer)

func FromCmdJob

func FromCmdJob(name, jobCmd, jobFunctions string, buffer *bytes.Buffer)

func FromConfBase

func FromConfBase(baseConf string, buffer *bytes.Buffer)

func FromConfConst

func FromConfConst(projectName string, buffer *bytes.Buffer)

func FromConfLocal

func FromConfLocal(env, content string, buffer *bytes.Buffer)

func FromConfMysql

func FromConfMysql(dbName string, buffer *bytes.Buffer)

func FromCronJob

func FromCronJob(cron, comment string, buffer *bytes.Buffer)

func FromDockerfile

func FromDockerfile(buffer *bytes.Buffer)

func FromDomain

func FromDomain(buffer *bytes.Buffer)

func FromDomainHandler

func FromDomainHandler(handlers []string, buffer *bytes.Buffer)

func FromErrCode

func FromErrCode(buffer *bytes.Buffer)

func FromGitignore added in v2.1.30

func FromGitignore(buffer *bytes.Buffer)

func FromJob

func FromJob(job, comment string, buffer *bytes.Buffer)

func FromMain

func FromMain(projectName string, cmdList []string, buffer *bytes.Buffer)

func FromModel

func FromModel(dbName, tabels string, buffer *bytes.Buffer)

func FromModelTable

func FromModelTable(dbName, tableStruct, tableName, fields string, buffer *bytes.Buffer)

func FromREADME

func FromREADME(buffer *bytes.Buffer)

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL