go 语言 web开发 数据库操作(mysql)

go 语言 web开发 数据库操作(mysql)

go语言qingyu2022-02-24 17:27:05185A+A-

1.png2.png

package main

import (
   "database/sql"
   "fmt"
   _ "github.com/go-sql-driver/mysql"
   "github.com/gorilla/mux"
   "html/template" //模板包
   "net/http"
)

var (
   //申明模板变量,自动引入模板包
   templates *template.Template
   news      []string
)

func main() {
   var db *sql.DB
   db, err := sql.Open("mysql", "root:root@tcp(127.0.0.1:3306)/p9_blog")
   if err != nil {
      panic(err)
   }
   rows, err := db.Query("select id,title from bg_article")

   if err != nil {
      panic(err)
   }
   var (
      id    string
      title string
   )

   for rows.Next() {
      rows.Scan(&id, &title)
      news = append(news, title)
   }
   templates = template.Must(template.ParseGlob("templates/*.html"))
   r := mux.NewRouter()
   //普通路由
   r.HandleFunc("/", indexHandler)
   r.HandleFunc("/admin", adminHandler)

   http.ListenAndServe(":8080", r)
}
func indexHandler(w http.ResponseWriter, r *http.Request) {
   w.WriteHeader(http.StatusOK)
   templates.ExecuteTemplate(w, "index.html", news)
}
func adminHandler(w http.ResponseWriter, r *http.Request) {
   w.WriteHeader(http.StatusOK)
   fmt.Fprintf(w, "<h1>后台</h1>")
}


点击这里复制本文地址 欢迎来到大黄鸡源码分享网
qrcode

大黄鸡源码编程网 © All Rights Reserved.  
网站备案号:闽ICP备18012015号-4
Powered by Z-BlogPHP
联系我们| 关于我们| 广告联系| 网站管理