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

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

golang书城商店功能介绍

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

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

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

使用技术
  • golang原生web框架

  • Mysql数据库

  • html前端

  • js框架jquery

功能展示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

主方法

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

beyond阿亮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值