java web课程设计(简单商城的前后端双系统,基于maven三模块开发)
1、系统分析
1.1需求分析
实现一个简单但功能完整的商城项目,从设计到实现,规范化完成该项目,锻炼javaweb项目的编写能力,理解软件工程的软件设计思想
1.2编程技术简介
本次课程主要使用的软件有Intellij IDEA、Navicate for MySql、Sublime text。
Intellij IDEA:主要用于项目的创建和项目核心代吗的编写,逻辑的实现。
Navicate for MySql:主要用于数据库的管理,可视化的数据表更容易找出项目中的问题。
Sublime text:主要用于前端页面的编写。在tomcat中测试前端页面太麻烦了,所有都是先写出了HTML改好样式,然后改成jsp.
2系统设计
2.1架构设计
Maven:项目管理,主要用来管理jar包
MyBatis:数据库访问,DAO层的编写
MySQL:数据存储。
Bootstrap:后台页面,前台页面使用原生CSS编写样式
2.2系统模块设计
依赖于maven的jar包管理,将该项目分成三个模块,
1、shop-common:工具类模块。
2、shop-management:后台管理模块
3、shop-site:前台商城模块
1、工具类模块:主要是项目用到的工具的编写。DAO层的数据访问、Filter过滤器处理乱码和是否登录的校验。时间类型的转换等功能。
2、后台管理模块:编写一个javaweb项目,实现对商品的后台管理,确保项目运行后不需要修改任何地方的代码。
流程图:
3、前台商城系统:编写一个javaweb项目,实现商品的展示,销售。
流程图:
2.3数据库设计
3效果展示
3.1后台管理中心
3.2商城系统
4、SQL
CREATE DATABASE classshop;
use classshop;
CREATE TABLE `classshop`.`shop` (
`shopId` bigint(20) NOT NULL COMMENT '商品ID',
`categoryId` bigint(20) NOT NULL COMMENT '类别ID',
`name` varchar(45) NOT NULL COMMENT '商品名称',
`level` int(2) NOT NULL COMMENT '商品等级',
`price` int(9) NOT NULL COMMENT '商品价格',
`smallImg` mediumblob NOT NULL COMMENT '图片',
`createTime` datetime NOT NULL COMMENT '创建时间',
`updateTime` datetime NOT NULL COMMENT '修改时间',
PRIMARY KEY (`shopId`)
);
CREATE TABLE `classshop`.`category` (
`categoryId` bigint(20) NOT NULL COMMENT '分类ID',
`name` varchar(255) NOT NULL COMMENT '分类名称',
`createTime` datetime NOT NULL COMMENT '创建时间',
`updateTime` datetime NOT NULL COMMENT '修改时间',
PRIMARY KEY (`categoryId`)
);
CREATE TABLE `classshop`.`user` (
`userId` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '用户Id',
`username` varchar(255) NOT NULL COMMENT '用户账号',
`password` varchar(255) NOT NULL COMMENT '密码',
`phoneNumber` bigint(20) NOT NULL COMMENT '电话',
PRIMARY KEY (`userId`, `username`)
);
CREATE TABLE `classshop`.`shopCart` (
`shopingId` bigint(20) NOT NULL COMMENT '购物车Id',
`shopID` bigint(20) NOT NULL COMMENT '商品Id',
`shopNumber` varchar(255) NOT NULL COMMENT '数量'
);
5、代码
https://download.csdn.net/download/qq_38723677/10884307
java web课程设计(简单商城的前后端双系统,基于maven三模块开发)的更多相关文章
- java web课程设计截图和服务器地址
企业办公测试截图和服务器地址 本篇博客主要围绕以下几个部分展开,登录.系统管理.工作流.个人事务管理.内部邮件.公共信息共六个部分.主要有界面截图和简要介绍. 一.登录.更改密码界面 登录界面包括以管 ...
- Java面向对象课程设计——购物车
Java面向对象课程设计——购物车 小组成员:余景胜.刘格铭.陈国雄.达瓦次仁 一.前期调查 流程 客人(Buyer)先在商城(Mall)中浏览商品(Commidity),将浏览的商品加入购物车(Sh ...
- Java语言课程设计——博客作业教学数据分析系统(201521123107 张翔)
#Java语言课程设计--博客作业教学数据分析系统(个人博客) 1.团队课程设计博客链接 [博客作业教学数据分析系统(From:网络五条狗)](http://www.cnblogs.com/fanta ...
- java web 项目中 简单定时器实现 Timer
java web 项目中 简单定时器实现 Timer 标签: Java定时器 2016-01-14 17:28 7070人阅读 评论(0) 收藏 举报 分类: JAVA(24) 版权声明:本文为博 ...
- List多个字段标识过滤 IIS发布.net core mvc web站点 ASP.NET Core 实战:构建带有版本控制的 API 接口 ASP.NET Core 实战:使用 ASP.NET Core Web API 和 Vue.js 搭建前后端分离项目 Using AutoFac
List多个字段标识过滤 class Program{ public static void Main(string[] args) { List<T> list = new List& ...
- 购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(2)--前端,以及前后端Session
原文:购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(2)--前端,以及前后端Session chsakell分享了前端使用AngularJS,后端使用ASP.NE ...
- Java团队课程设计——基于学院的搜索引擎
团队名称.团队成员介绍.任务分配,团队成员课程设计博客链接 姓名 成员介绍 任务分配 课程设计博客地址 谢晓淞(组长) 团队输出主力 爬虫功能实现,Web前端设计及其后端衔接 爬虫:https://w ...
- java web项目最简单的结构
为了解“徒手”建立一个web应用,此博客建立简单过程 1.在任意一个目录下,建立一个文件夹,取名字 webDemo .这个应用名字. 2.在 webDemo 内建立一个 WEB-INF 文件夹,此处大 ...
- Java web课程学习之Servlet
Servlet简介 (1) Servlet本质上就是一个Java类,只不过运行在Servlet容器中 (2) Servlet的功能: ① 创建并返回客户请求的动态HTML页面 ② 创建可嵌入到现有 ...
随机推荐
- 算法leetcode_分治算法
一.基本概念 在计算机科学中,分治法是一种很重要的算法.字面上的解释是"分而治之",就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题--直到最后子 ...
- linux系统安装+windows系统安装
linux 1.格式化U盘 打开管理员命令提示符 diskpart list disk select disk 2 clean create partition primary format fs=f ...
- 开发工具IDE从入门到爱不释手(四)高级进阶
代码生成Alt+Insert set/get生成 构造方法生成 toString生成 hashCode,equals 代码重构Refactor 不改变原有逻辑,让IDE帮助代码美观 重命名 Shift ...
- 第十六篇 -- SuperIO学习
一.SuperIO 这次主要研究SuperIO读取以及控制风扇转速的问题. 参考文章:https://huchanghui123.github.io/Linux/Linux-Superio-CPU-F ...
- ajax()返回Array
后台查询的数据为数组$arr,需要将数组 echo json_encode($arr);前台ajax拿到数据 然后用 eval("(+data+)"); 来将json转为json对 ...
- Nexus Repository Manager 3 远程命令执行漏洞(CVE-2019-7238)
poc地址 https://github.com/magicming200/CVE-2019-7238_Nexus_RCE_Tool
- Mac使用Charles抓取ios手机APP中的https请求
1.配置Http代理 Port为监听端口号,默认为8888,勾选Enable transparent HTTP proxying,接着勾选SOCKS proxy,可以监听Socks请求 2.安装Cha ...
- SQL语句(五)子查询
目录 一.子查询含义 二.子查询分类 按子查询的位置分 按结果集的行列数不同分 三.WHERE后面的子查询 1. 标量子查询 2. 列子查询(多行子查询) 3. 行子查询(结果为一行多列或多行多列) ...
- 对象转换工具 MapStruct 介绍
前言 在我们日常开发的分层结构的应用程序中,为了各层之间互相解耦,一般都会定义不同的对象用来在不同层之间传递数据,因此,就有了各种 XXXDTO.XXXVO.XXXBO 等基于数据库对象派生出来的对象 ...
- Java 执行控制流程
1.带标签的break会中断并跳出标签所指的循环: 2.带标签的continue会中断本次循环,并开始标签所指处循环的下一轮循环.