go语言原生web框架 golang项目-书城商店

go语言原生web框架 golang项目-书城商店

golang书城商店功能介绍

书城主页 分页展示 价格搜索 登录注册 加入购物车 购买 我的订单 查看详情

后台管理 图书管理 添加修改删除图书 订单管理 发货

go语言原生web框架开发的一个 "书城商店" 网站 数据库使用mysql

使用技术

  • golang原生web框架

  • Mysql数据库

  • html前端

  • js框架jquery

功能展示

主页.jpg
登录.jpg
注册.jpg
购物车.jpg
价格搜索.jpg
我的订单.jpg
订单详情.jpg
图书管理.jpg
订单管理.jpg

主方法

main.go

package main

import (
    "book-store/controller"
    "net/http"
    "os"
)

func main() {
    parseStatic()
    userHandler()
    bookHandler()
    cartHandler()
    orderHandler()
    //8080端口监听 多路复用器为nil表示使用默认值
    http.ListenAndServe(":8080", nil)
}

func parseStatic() {
    //设置处理静态资源(css和js文件)
    //http.StripPrefix(prefix string , h Handler) Handler
    //http.StripPrefix返回一个处理器,该处理器会将请求的URL.Path字段中给定前缀prefix去除后,再交给h处理。如果prefix为空会回复404。
    //此时html中的所有URL地址以static开头的资源都能被加载出来(pages同理)
    //逻辑:如果访问"/static/"开头的资源,就去"书城项目/views/static"里找(pages同理)
    path, _ := os.Getwd()
    http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir(path+"/views/static"))))
    http.Handle("/pages/", http.StripPrefix("/pages/", http.FileServer(http.Dir(path+"/views/pages"))))
}

func userHandler() {
    //去首页
    http.HandleFunc("/", controller.GetPageBooksByPrice)
    //去登录
    http.HandleFunc("/login", controller.LoginHandler)
    //去注册
    http.HandleFunc("/regist", controller.RegistHandler)
    //去注销
    http.HandleFunc("/logout", controller.LogoutHandler)
    //Ajax请求验证用户名是否可用
    http.HandleFunc("/checkUserName", controller.CheckUserName)
}

func bookHandler() {
    ////去图书管理(所有的)
    //http.HandleFunc("/getPageBooks",controller.GetBooks)
    //去图书管理(带分页的)
    http.HandleFunc("/getPageBooks", controller.GetPageBooks)
    //去删除图书
    http.HandleFunc("/deleteBooks", controller.DeleteBooks)
    //去更新或添加图书信息输入页
    http.HandleFunc("/toUpdateOrAddBooks", controller.ToUpdateOrAddBooks)
    //去更新或添加图书
    http.HandleFunc("/updateOrAddBooks", controller.UpdateOrAddBooks)
    //去获取图书价格范围分页
    http.HandleFunc("/getPageBooksByPrice", controller.GetPageBooksByPrice)
}

func cartHandler() {
    //去添加图书到购物车
    http.HandleFunc("/addBookCart", controller.AddBookCart)
    //去获取购物车信息
    http.HandleFunc("/getCartInfo", controller.GetCartInfo)
    //去清空购物车
    http.HandleFunc("/deleteCart", controller.DeleteCart)
    //去删除购物项
    http.HandleFunc("/deleteCartItem", controller.DeleteCartItem)
    //更新购物项
    http.HandleFunc("/updateCartItem", controller.UpdateCart)
}

func orderHandler() {
    //去结账
    http.HandleFunc("/checkout", controller.Checkout)
    //去订单管理
    http.HandleFunc("/getOrder", controller.GetOrder)
    //去获取订单详情
    http.HandleFunc("/getOrderInfo", controller.GetOrderInfo)
    //去我的订单
    http.HandleFunc("/getMyOrder", controller.GetMyOrder)
    //去发货
    http.HandleFunc("/sendOrder", controller.SendOrder)
    //去确认收货
    http.HandleFunc("/takeOrder", controller.TakeOrder)
}

运行

创建数据库, 然后修改数据库连接相关信息。

go run main.go

访问: http://127.0.0.1:8080/
账号/密码: abc/123456

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容