<html lang="zh">
<body>
<h1>网上商城</h1>
<h2>截图展示</h2>
<img src="./img/product.gif" alt="商品页面" /><br />
<img src="./img/regist.gif" alt="注册页面" /><br />
<img src="./img/login.gif" alt="登录页面" /><br />
<img src="./img/cart.gif" alt="购物车" /><br />
<img src="./img/order.gif" alt="订单" /><br />
<img src="./img/search.gif" alt="检索" /><br />
<img src="./img/manage_product.gif" alt="管理商品" /><br />
<img src="./img/add_product.gif" alt="新增商品" /><br />
<img src="./img/instantbuy.gif" alt="秒杀" /><br />
<h2>声明</h2>
<ul>
<li>未经许可不得将本项目商用,如需商用请联系作者<a href="mailto:zxr@tju.edu.cn">zxr@tju.edu.cn</a></li>
<li>欢迎各位看官向本项目提交代码,对提交的分支我将进行合并。提交时请务必保证能编译能运行</li>
</ul>
<h2>关键技术</h2>
<p>基于SpringCloud框架开发的商城系统,代码严格遵循MVC分层思想,可部署到服务器上,设计精良,不断完善</p>
<h2>包结构说明</h2>
<ul>
<li>com.supermarket.*.filter对应于微服务的过滤器</li>
<li>com.supermarket.*.listener对应于微服务的监听器</li>
<li>com.supermarket.*.controller对应于微服务的controller层</li>
<li>com.supermarket.*.aspect对应于微服务的切面类</li>
<li>com.supermarket.*.service对应于微服务的service层</li>
<li>com.supermarket.*.dao对应于微服务的持久层</li>
<li>com.supermarket.*.schedule对应于微服务的定时任务</li>
<li>com.supermarket.*.exception对应于微服务的自定义异常</li>
<li>com.supermarket.*.domain对应于微服务的JavaBean</li>
<li>com.supermarket.*.utils对应于微服务的工具类</li>
<li>com.supermarket.*.vo对应于微服务的ViewObject</li>
</ul>
<h2>系统架构</h2>
<img src="./img/架构图.png" alt="架构图" />
<h2>功能说明</h2>
<h3>用户微服务(com.supermarket.user)</h3>
<ul>
<li>用户登录</li>
<li>免验证码登录</li>
<li>用户注册</li>
<li>用户登出</li>
<li>用户名可用性校验</li>
<li>用户登录状态获取</li>
<li>查询用户权限等级</li>
</ul>
<h3>商品微服务(com.supermarket.product)</h3>
<ul>
<li>分页查询</li>
<li>单个商品查询</li>
<li>商品新增</li>
<li>商品修改</li>
<li>查询全部商品</li>
</ul>
<h3>公共资源微服务(com.supermarket.common)</h3>
<ul>
<li>公共资源微服务同时也是SpringCloud的Eureka模块</li>
<li>提供了常用的JavaBean, ViewObject, 工具类</li>
</ul>
<h3>zuul网关(com.supermarket.gateway)</h3>
<ul>
<li>SpringCloud的zuul网关模块</li>
<li>对敏感API调用进行后端鉴权</li>
</ul>
<h3>图片微服务(com.supermarket.image)</h3>
<ul>
<li>图片上传功能</li>
<li>生成验证码功能</li>
<li>清除验证码在redis中的缓存</li>
</ul>
<h3>购物车微服务(com.supermarket.cart)</h3>
<ul>
<li>购物车查询</li>
<li>购物车新增商品</li>
<li>购物车删除商品</li>
<li>购物车修改商品</li>
<li>购物车价格查询</li>
</ul>
<h3>订单微服务(com.supermarket.order)</h3>
<ul>
<li>新增订单</li>
<li>删除订单</li>
<li>查询订单</li>
</ul>
<h3>检索微服务(com.supermarket.search)</h3>
<ul>
<li>分页检索</li>
<li>新增商品</li>
<li>删除商品</li>
<li>建立索引</li>
</ul>
<h3>秒杀微服务(com.supermarket.instantbuy)</h3>
<ul>
<li>全部秒杀商品查询</li>
<li>单个秒杀商品查询</li>
<li>发起秒杀</li>
</ul>
<h2>新版本部署教程</h2>
<ol>
<li>环境准备<ol>
<li>开发环境准备:首先你需要有一台电脑、以及一个虚拟机(或服务器)。内存要大,不然跑不起来。假设你的虚拟机的ip地址是192.168.137.147在你的电脑中把hosts追加两行。<br />
<code>192.168.137.147 www.supermarket.com</code><br />
<code>192.168.137.147 image.supermarket.com</code><br />
然后添加环境变量<br />
<code>DOCKER_HOST=tcp://192.168.137.147:2375</code></li>
<li>部署环境准备:虚拟机装上centos7,再装上docker,然后依次拉取镜像<br />
<code>docker pull zongxr/redis:3.2.11</code><br />
<code>docker pull zongxr/mycat:1.15.1</code><br />
<code>docker pull zongxr/mysql:5.7.37</code><br />
<code>docker pull zongxr/elasticsearch:6.8.6</code><br />
<code>docker pull zongxr/supermarket-cart:1.0-SNAPSHOT</code><br />
<code>docker pull zongxr/supermarket-user:1.0-SNAPSHOT</code><br />
<code>docker pull zongxr/supermarket-gateway:1.0-SNAPSHOT</code><br />
<code>docker pull zongxr/supermarket-eureka:1.0-SNAPSHOT</code><br />
<code>docker pull zongxr/supermarket-image:1.0-SNAPSHOT</code><br />
<code>docker pull zongxr/supermarket-search:1.0-SNAPSHOT</code><br />
<code>docker pull zongxr/supermarket-instantbuy:1.0-SNAPSHOT</code><br />
<code>docker pull zongxr/supermarket-product:1.0-SNAPSHOT</code><br />
<code>docker pull zongxr/supermarket-order:1.0-SNAPSHOT</code><br />
然后把start_up目录拷贝到/home目录下</li>
</ol></li>
<li>部署数据库<ol>
<li>参照<a href="./start_up/mysql/start_mysql.sh" target="_blank">数据库启动脚本</a>逐行执行,或直接运行该脚本。</li>
<li>由于官方的mysql镜像没有默认开启主从配置,也没设定UTF-8字符集,因此使用本项目专有镜像zongxr/mysql:5.7.37,可自动开启bin-log,并设定UTF-8字符集</li>
<li>该脚本制作了双向主从高可用的数据分片,节点分别为dn1_host1, dn1_host2, dn2_host1, dn2_host2。并且通过mycat实现了读写分离以及分库分表,最后灌入数据。如果上一步执行成功了,你将能够通过以下的JDBC连接上数据库
<code>jdbc:mysql://192.168.137.147:3306/supermarket</code>连接dn1_host1<br />
<code>jdbc:mysql://192.168.137.147:3307/supermarket</code>连接dn1_host2<br />
<code>jdbc:mysql://192.168.137.147:3308/supermarket</code>连接dn2_host1<br />
<code>jdbc:mysql://192.168.137.147:3309/supermarket</code>连接dn2_host2<br />
<code>jdbc:mysql://192.168.137.147:8066/supermarket</code>连接mycat<br />
</li>
</ol></li>
<li>部署redis集群<ol>
<li>参照<a href="./start_up/redis/start_redis.sh" target="_blank">redis启动脚本</a>逐行执行,或者直接运行该脚本</li>
<li>该脚本搭建了一个6节点的redis集群,从redis-1到redis-6。由于3.2.11版本的redis官方镜像没有预置ruby环境,而创建集群需要使用ruby环境。因此使用该项目的专用redis镜像zongxr/redis:3.2.11,该镜像已经集成了ruby环境可直接使用。</li>
<li>如果上一步redis集群部署成功了,那么可以通过6379端口连接该集群</li>
</ol></li>
<li>部署elasticsearch集群<ol>
<li>参照<a href="./start_up/elasticsearch/start_es.sh" target="_blank">elasticsearch启动脚本</a>逐行执行,或直接运行该脚本</li>
<li>该脚本搭建了3节点的elasticsearch集群,分别是es-1, es-2, es-3。如果部署成功了,可以使用<a href="https://chrome.google.com/webstore/detail/elasticsearch-head/ffmkiejjmecolpfloofpjologoblkegm?hl=zh-CN" target="_blank">head插件</a>连接<a href="http://192.168.137.147:9200/" target="_blank">http://192.168.137.147:9200/</a>地址,集群状态应为g
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【项目资源】: 包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。 包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】: 所有源码都经过严格测试,可以直接运行。 功能在确认正常工作后才上传。 【适用人群】: 适用于希望学习不同技术领域的小白或进阶学习者。 可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】: 项目具有较高的学习借鉴价值,也可直接拿来修改复刻。 对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】: 有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 鼓励下载和使用,并欢迎大家互相学习,共同进步。
资源推荐
资源详情
资源评论
收起资源包目录
毕设&课设&项目&实训-设计精良的网上商城系统,包括前端、后端、数据库、负载均衡、数据库缓存、读写分离、全文检索.zip (1269个子文件)
9790b3a7-73ce-4296-bfae-1c9bb3dabe2a_ 0B
file_manager_json.ashx 6KB
upload_json.ashx 3KB
UpLoad_Class.asp 15KB
file_manager_json.asp 6KB
JSON_2.0.4.asp 4KB
upload_json.asp 3KB
demo.asp 2KB
demo.aspx 2KB
wrapper.conf 4KB
nginx.conf 3KB
redis.conf 158B
instantbuy.css 149KB
psearch20131008.css 92KB
easyui.css 51KB
easyui.css 51KB
easyui.css 51KB
easyui.css 50KB
easyui.css 47KB
base.css 45KB
jquery-ui-1.9.2.custom.css 30KB
jquery-ui-1.9.2.custom.min.css 26KB
psearch.onebox.css 21KB
default.css 20KB
tabs.css 8KB
tabs.css 8KB
tabs.css 8KB
tabs.css 8KB
pop_compare.css 7KB
tabs.css 6KB
datagrid.css 5KB
datagrid.css 5KB
datagrid.css 5KB
datagrid.css 5KB
datagrid.css 5KB
linkbutton.css 4KB
linkbutton.css 4KB
linkbutton.css 4KB
linkbutton.css 4KB
linkbutton.css 4KB
color.css 4KB
calendar.css 4KB
calendar.css 4KB
calendar.css 4KB
calendar.css 4KB
calendar.css 4KB
tree.css 3KB
tree.css 3KB
tree.css 3KB
tree.css 3KB
tree.css 3KB
qq.css 3KB
panel.css 3KB
panel.css 3KB
panel.css 3KB
panel.css 3KB
head.css 3KB
prodList.css 3KB
panel.css 2KB
icon.css 2KB
simple.css 2KB
prodInfo.css 2KB
window.css 2KB
window.css 2KB
window.css 2KB
window.css 2KB
menu.css 2KB
menu.css 2KB
menu.css 2KB
menu.css 2KB
menu.css 2KB
cart.css 2KB
tooltip.css 2KB
tooltip.css 2KB
tooltip.css 2KB
tooltip.css 2KB
tooltip.css 2KB
menubutton.css 2KB
menubutton.css 2KB
menubutton.css 2KB
menubutton.css 2KB
menubutton.css 2KB
searchbox.css 2KB
searchbox.css 2KB
searchbox.css 2KB
searchbox.css 2KB
searchbox.css 2KB
textbox.css 2KB
textbox.css 2KB
textbox.css 2KB
textbox.css 2KB
textbox.css 2KB
window.css 2KB
layout.css 2KB
layout.css 2KB
layout.css 2KB
layout.css 2KB
layout.css 2KB
slider.css 2KB
slider.css 2KB
共 1269 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
资源评论
妄北y
- 粉丝: 2w+
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 【java毕业设计】电影院购票系统源码(springboot+vue+mysql+说明文档+LW).zip
- dabai小程序源码(优秀毕业设计源码 + 运行截图).zip
- django-vue-lyadmin前端采用vue3+elementplus,后端采用Python Django DRF的一套前后端分离的低代码快速后台开发平台(专业版带有代码生成和表单构建器)
- 【java毕业设计】宠物商城网站设计与实现源码(springboot+vue+mysql+说明文档+LW).zip
- 基于数据安全的某电商平台店铺销售数据的分析与实现Vue+Java.zip
- SpringBoot项目连接多源MySQL数据库 - 数据开发猿
- java职称评审系统源码数据库 MySQL源码类型 WebForm
- S2024052基于springboot+vue的新能源汽车信息咨询服务平台-snu6t.zip
- 【java毕业设计】车辆管理系统源码(springboot+vue+mysql+说明文档+LW).zip
- springboot框架下基于Java Web的新能源汽车信息咨询系统设计与实现
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功