Skip to content
geelevelgeelevel

Backend Knowledge Base ​

Backend Directory Structure ​

server folder is a Golang backend project, requires Golang basics and Gin framework basics

Server Project Structure ​

shell
β”œβ”€β”€ api
β”‚Β Β  └── v1
β”œβ”€β”€ config
β”œβ”€β”€ core
β”œβ”€β”€ docs
β”œβ”€β”€ global
β”œβ”€β”€ initialize
β”‚Β Β  └── internal
β”œβ”€β”€ middleware
β”œβ”€β”€ model
β”‚Β Β  β”œβ”€β”€ request
β”‚Β Β  └── response
β”œβ”€β”€ packfile
β”œβ”€β”€ resource
β”‚Β Β  β”œβ”€β”€ excel
β”‚Β Β  β”œβ”€β”€ page
β”‚Β Β  └── template
β”œβ”€β”€ router
β”œβ”€β”€ service
β”œβ”€β”€ source
└── utils
    β”œβ”€β”€ timer
    └── upload
FolderDescriptionDetails
apiAPI layerAPI layer
--v1v1 version interfacesv1 version interfaces
configConfiguration packageConfiguration structs corresponding to config.yaml
coreCore filesInitialization of core components (zap, viper, server)
docsSwagger documentation directorySwagger documentation directory
globalGlobal objectsGlobal objects
initializeInitializationInitialization of router, redis, gorm, validator, timer
--internalInternal initialization functionsCustom gorm logger, functions in this folder can only be called by initialize layer
middlewareMiddleware layerUsed to store gin middleware code
modelModel layerModels corresponding to data tables
--requestInput parameter structsReceive data sent from frontend to backend.
--responseOutput parameter structsData structs returned to frontend
packfileStatic file packagingStatic file packaging
resourceStatic resource folderResponsible for storing static files
--excelExcel import/export default pathExcel import/export default path
--pageForm generatorForm generator packaged dist
--templateTemplateTemplate folder, stores code generator templates
routerRoute layerRoute layer
serviceService layerStores business logic
sourceSource layerStores initialization data functions
utilsUtility packageUtility function encapsulation
--timerTimerTimer interface encapsulation
--uploadOSSOSS interface encapsulation