Getting started with Go backend development: Install and set up the Go locale. Write your first backend service, define functions to handle requests and start the HTTP server. Integrate with MySQL database to create models, connect to the database and execute queries.
Go back-end development: Getting started guide and practical cases
Introduction
Go is a modern, high-performance programming language ideal for back-end development. It provides explicit support for concurrency, making it easy to develop high-throughput and scalable applications. This article will guide you in getting started with Go backend development and provide a practical case to deepen your understanding.
Installation and setup
go version
in the terminal to verify the installationWriting your first backend service
Use any text editor to create the file main.go
:
package main import ( "fmt" "net/http" ) func main() { // 定义一个处理请求的函数 http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "Hello, Go!") }) // 启动 HTTP 服务器 http.ListenAndServe(":8080", nil) }
package main
Defines the entry point of the programimport
Statement to import the required librarymain
Function definition program execution logichttp.HandleFunc
Register one HTTP routing, mapping the /
path to the processing function http.ListenAndServe
Start the server, listening port 8080
Run your application
go run main.go
http://localhost:8080
, you will see "Hello, Go!"MySQL integration
In order to develop more Actual application, integrated with database. The following are the steps to connect and query a MySQL database using gorm
:
app.go
file: package main import ( "fmt" "time" "github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/mysql" ) type User struct { ID uint `gorm:"primary_key"` Username string `gorm:"size:255;not null"` Password string `gorm:"size:255;not null"` CreatedAt time.Time `gorm:"default:current_timestamp"` UpdatedAt time.Time `gorm:"default:current_timestamp"` DeletedAt *time.Time `sql:"index"` } func main() { // 连接到 MySQL 数据库 db, err := gorm.Open("mysql", "root:root@tcp(127.0.0.1:3306)/go_dev") if err != nil { panic(err) } defer db.Close() // 自动迁移 User 模型 db.AutoMigrate(&User{}) // 创建一个新用户 user := User{Username: "testuser", Password: "password"} db.Create(&user) // 按 ID 查询用户 var queriedUser User if err := db.First(&queriedUser, user.ID).Error; err != nil { panic(err) } // 打印查询到的用户名 fmt.Println(queriedUser.Username) }
type User
Define the User modelmain
function, establish a MySQL connection and automatically migrate the User modelThe above is the detailed content of Go backend development: Getting started guide and practical cases. For more information, please follow other related articles on the PHP Chinese website!