day01-家具网购项目说明
家具网购项目说明
1.项目前置技术
- Java基础
- 正则表达式
- Mysql
- JDBC
- 数据库连接池技术
- 满汉楼项目(包括框架图)
- JavaWeb
2.相关说明
这里先使用原生的servlet/过滤器,后台是经典的分层结构WEB-Service-DAO-Entity
在学习SSM时,我们使用SSM框架(Vue3+ElementPlus+Axios+SSM前后端分离)
3.软件项目开发阶段

4.项目的需求/界面
主页面:


选购页面:

购物车:

后台管理页面:


5.项目设计
5.1程序框架图
使用分层模式,分层的目的是为了解耦,降低代码的耦合度,有利于项目的维护和升级
经典的JavaEE三层架构:

项目具体分层(不同包)方案:
| 分层 | 对应包 | 说明 |
|---|---|---|
| web层 | com.li.furns.web/servlet/controller/handler | 接收用户请求,调用service |
| service层 | com.li.furns.service | Service接口包 |
| com.li.furns.service.impl | Service接口实现类 | |
| dao持久层 | com.li.furns.dao | Dao接口包 |
| com.li.furns.dao.impl | Dao接口实现类 | |
| 实体bean对象 | com.li.furns.pojo/entity/domain/bean | Javabean类 |
| 工具类 | com.li.furns.utils | 工具类 |
| 测试包 | com.li.furns.test | 完成对dao/service测试 |
5.2MVC
什么是MVC?
MVC全称:Model模型,View视图,Controller控制器。
MVC最早出现在JavaEE三层中的Web层,它可以有效地指导WEB层的代码如何有效分离,单独工作。
View视图:只负责数据和界面的显示,不接受任何与显示数据无关的代码,便于程序员和美工的分工合作(Vue / JSP / Thymeleaf / HTML)
Controller控制器:只负责接收请求,调用业务层的代码处理请求,然后派发页面,是一个“调度者”的角色(Servlet),这个概念会贯穿JavaEE
Model模型:将业务逻辑相关的数据封装成具体的JavaBean类,其中不掺杂任何与数据处理相关的代码(JavaBean,Domain,Pojo)
MVC是一种思想
MVC的理念是将软件代码拆分为组件,单独开发,组合使用(目的还是为了解耦合),也有很多落地的框架比如SpringMVC
MVC示意图

前面的程序框架图显示了web层用到的技术比较多元,在处理的时候往往需要一种模式来进行支撑,这个模式就是MVC。即web层的具体细化,需要用到MVC来解耦。
- MVC模式细化:

解读:
- model模型(Javabean),表示数据,通过Service-Dao来获取
- view视图(html,css,vue...),表示界面,用于展示数据
- controller控制器(servlet),充当调度者的角色,接收数据,调用service完成业务操作
- MVC是一种思想,体现的是数据显示,数据处理和业务调用的分离、解耦
- SpringMVC就是MVC的一个落地体现
day01-家具网购项目说明的更多相关文章
- 网购vs实体店购物 [20161226]
2016这一年依然网购了许多商品,比起以往,我选择退货的次数更多了. 以前如果网购到尺码或者样式不合适的东西,有时候将就拿去用,没有选择退货.由此闲置了不少衣物,而且延续高中时喜欢穿大一号的衣服的习惯 ...
- Jquery day01
day01: 基础--选择器.属性和CSS.文档处理 day02: 高级--筛选.事件.效果.ajax jQuery介绍 JS类库 JavaScript 库封装了很多预定义的对象和实用函数.能帮助使用 ...
- python Day01
Python Day01 Python 简介 介绍 Python 是一种面向对象.直译式的计算机程序设计语言,也是一种功能强大的通用型语言,已经有将近二十年的发展历史,成熟稳定.包含了一组完善而且容易 ...
- Spring day01笔记
struts:web层,比较简单(ValueStack值栈,拦截器) hibernate:dao层,知识点杂 spring:service层,重要,讲多少用多少 --> [了解] sprin ...
- 传智播客JavaWeb day01 快捷键、XML
2015-01-14 一直计划着学习java,今天晚上终于下定决心看了下传智播客朴乾老师的javaweb开发视频day01之第一讲,主要内容是开发工具简单介绍.怎么创建工程.Junit的介绍,我是C# ...
- python开发学习-day01 (python安装与版本、字符串、字典、运算符、文件)
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
- coco2d学习day01 精灵分析
day01笔记 using namespace cocos2d; == USING_NS_CC; 一般用后面的 #ifndef __MYLAYER_H__ #define __MYLAYER_H__ ...
- 【GIVENCHY商务休闲风格/白色/100%精梳棉/撞色拼接领/长袖衬衣】玛萨玛索男装网购商城
[GIVENCHY商务休闲风格/白色/100%精梳棉/撞色拼接领/长袖衬衣]玛萨玛索男装网购商城 GIVENCHY商务休闲风格/白色/100%精梳棉/撞色拼接领/长袖衬衣
- 【Cavali风格/优质羊毛混纺面料/高密抗静电里衬/撞色拼皮/立领/绿色/便装单西】玛萨玛索男装网购商城
[Cavali风格/优质羊毛混纺面料/高密抗静电里衬/撞色拼皮/立领/绿色/便装单西]玛萨玛索男装网购商城 Cavali风格/优质羊毛混纺面料/高密抗静电里衬/撞色拼皮/立领/绿色/便装单西
- 【Dior风格/舒适防风面料/抗静电里衬/大身撞色拼接/精致平驳领/时尚便西款/蓝绿色】玛萨玛索男装网购商城
[Dior风格/舒适防风面料/抗静电里衬/大身撞色拼接/精致平驳领/时尚便西款/蓝绿色]玛萨玛索男装网购商城 [特价商品] Dior风格/舒适防风面料/抗静电里衬/大身撞色拼接/精致平驳领/时尚便西款 ...
随机推荐
- logstash安装插件修改使用的gem源
gem source -l # 查看当前使用的gem源 gem source --remove https://rubygems.org/ # 移除gem源 gem source -a https:/ ...
- CentOS7 安装 Git 服务器
1.安装Git $ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel $ yum ...
- MongoDB 的用户和角色权限
副本和分片集群的安全设置参考这个:高级:https://files.cnblogs.com/files/sanduzxcvbnm/mongodb_advance.pdf 默认情况下,MongoDB实例 ...
- while循环控制
基本语法 例(输出五句hello): int i = 1; //循环变量初始化 while(i<=5){ //循环条件 printf("\n hello!"); //循环语句 ...
- Mysql 数据库SQL脚本导入
1.进入mysql命令行窗口 mysql -uroot -p123456 2.展示所有数据库 show databases: 3.选择数据库 use 数据库名 4.展示选择的数据库中所有表 show ...
- redis bitmap数据结构之java对等操作
在之前的文章中,我们有说过bitmap,bitmap在很多场景可以应用,比如黑白名单,快速判定,登录情况等等.总之,bitmap是以其高性能出名.其基本原理是一位存储一个标识,其他衍生知道咱就不说了, ...
- DevOps|高效能敏捷交付组织:特性团队(FeatureTeam)+Scrum
这是<研发效能组织能力建设>的第三篇.特性团队和Scrum,这两个定义我们在之前的文章中都详细介绍了.这两个组织模式或者说管理实践,我都用过所以有些时候特别有感触.书本上纯粹的模式很容易理 ...
- HTML基础知识(1)常用标签的使用 h、p、img、meta、a、iframe...
文章目录 1.html简介 2.html注释 3.标签的属性 3.1 代码 3.2 测试结果 4.常用的标签 4.1 代码 4.2 测试结果 5.实体 5.1 代码 5.2 测试结果 6.图片引入 6 ...
- 8.gitlab服务器搭建(基于centos7)
gitlab服务硬件要求 建议服务器最低配置:2核 2G以上内存(不包含2GB,2GB内存运行的时候内存直接爆掉) 官网给出的推荐配置:4核 4GB内存 支持500个用户,8核 8GB内存 支持100 ...
- ubuntu 基本指令
系统相关 df: disk free 用以显示系统上文件系统磁盘的使用情况 # 以M/G单位显示硬盘空间大小 df -h apt: advanced packaging tool 包管理工具 apt ...