一个ssm综合小案例-商品订单管理----写在前面
学习了这么久,一直都是零零散散的,没有把知识串联起来综合运用一番
比如拦截器,全局异常处理,json 交互,RESTful 等,这些常见技术必须要掌握
接下来呢,我就打算通过这么一个综合案例把这段时间所学的知识串联起来做一个综合小案例,实现商品订单管理模块的开发
那么,这一块写成技术博客的原因呢,主要是督促自己每天有所行动,不要畏惧艰难,每一个大的项目都是由小小的知识点构建起来的。
不积跬步无以至千里,不积小流无以成江海。及时记录有助于自己整体把握知识点,为后面做一个大一点的项目做基础准备。
正好赶上五一花了两天来时间,做出了一个基于 SSM 的 简单的商品订单管理 webapp,页面功能如下:
登录页面,进行了服务器端校验

注册页面:

拦截器:

登录查看订单页面,正常情况下这里订单页面是不应该提供修改商品功能的,只是为了练手:

实现了查看商品,修改商品信息的功能,(其中修改商品添加了上传图片功能)


总结:这个项目虽然较小,但是麻雀虽小五脏俱全,该用的常见技术也都使用了,如:
拦截器验证登录信息
MD5 信息摘要实现粗糙的密码加密
自定义日期格式转换器 String -->Date
全局异常处理器
RESTful 风格 url 规范实现 (url 模板映射) 且引入了 jQuery img css 等静态资源并对其做了静态资源过滤不拦截处理
多部件解析器配置,实现图片上传服务器
验证了一把 json 跟 key/value 请求数据 ,以及 response 响应 json 数据
值得一提的是 mybatis 真心好用,半自动的持久层 ORM 框架,相对于hibernate可以自定义 sql (这里用到了相对复杂的多多映射-->就是登录后的商品订单查看页面),真的可以一起装逼一起飞
综合来看主要剩下两点没有在这个项目里实践
使用逆向工程生成mapper,pojo,以及单表的xml的映射文件
商品修改添加校验,学习springmvc提供校验validation(使用的是hibernate校验框架)
等到以后有时间再做融合吧。
项目完整代码(约 31MB) 网盘地址:
链接:https://pan.baidu.com/s/1X7rxZnnFxJYdTRqMSEFAzA 密码:2jmn
这个项目对我来说可以作为以后大型项目的基石。。。
一个ssm综合小案例-商品订单管理----写在前面的更多相关文章
- 一个ssm综合小案例-商品订单管理-第一天
项目需求分析: 功能需求:登录,商品列表查询,修改 项目环境及技术栈: 项目构成及环境: 本项目采用 maven 构建 环境要求: IDEA Version: 2017.2.5 Tomcat Vers ...
- 一个ssm综合小案例-商品订单管理-第二天
准确来说是第二三天,一时兴起,把这个小项目一鼓作气写完了(较大的bug 均已被我手动捉出并 fix )才来写一篇博客. 接上文 第一天配置继续讲解:
- javascript综合小案例,校验用户注册信息提交
完成这个综合小案例,对于html.css.javascript的大部分内容复习快结束了. 这里做一个小案例--要实现的功能,以一张图片的形式给出: 首先,写出提交数据之后进入的页面代码: <!D ...
- 《java入门第一季》之面向对象综合小案例
需求: /* 教练和运动员案例 乒乓球运动员和篮球运动员. 乒乓球教练和篮球教练. 跟乒乓球相关的人员都需要学习英语. 分析,这 ...
- 一个VUE的小案例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- webpack核心概念使用的综合小案例
注: 由于版本更新很快,同样的配置不同版本很可能会出错(这个就很绝望了) 解决思路 看文档 查看源码接口 网上搜索相应错误 环境 webpack4.x + yarn 文件结构 . ├── dist / ...
- MyBatis小案例完善增强
https://blog.csdn.net/techbirds_bao/article/details/9233599 上链接为一个不错的Mybatis进阶博客 当你把握时间,时间与你为伍. 将上一个 ...
- 小程序全局状态管理,在页面中获取globalData和使用globalSetData
GitHub: https://github.com/WozHuang/mp-extend 主要目标 微信小程序官方没有提供类似vuex.redux全局状态管理的解决方案,但是在一个完整的项目中各组件 ...
- Vue小案例 之 商品管理------学习过滤器 使用过滤器处理日期的格式
代码学习过滤器 过滤器介绍:过滤模型数据,在数据显示前做预处理操作: 内置过滤器:在1.x中,Vue提供了内置过滤器,但是在2.x中已经完全废除: 解决办法: (1)使用第三方库来替代1.x中的内置过 ...
随机推荐
- 用opencv实现工控机的开机录像
需要训练一个神经网络模型,可能需要用到很多视频数据,所以我想把手头的工控机设置为上电自启动,再借助opencv编译一个可执行文件,放在windows开机启动文件夹里,这样只要连接好摄像头和工控机以及电 ...
- python中类中属性和方法的具体定义方法和使用
1. Python中类中特性分成属性和方法 属性和方法都分为私有和公有的,私有的只可以在本类中使用外部是无法访问的 2. 定义属性(成员变量)的语法格式(公有属性/私有属性) class 类名: de ...
- RyuBook1.0案例二:Traffic Monitor项目源码分析
Traffic Monitor源码分析 从simple_switch_13.SimpleSwitch13控制器继承并开发 class SimpleMonitor13(simple_switch_13. ...
- 甲题题解-1116. Come on! Let’s C (20)-(素数筛选法)
用vis标记出现过的id,checked标记询问过的id.至于如何判断排名为素数,用素数筛选法预处理一下即可,水题. #include <iostream> #include <cs ...
- YISMILE微信小程序使用说明
使用说明: 程序名称:易校(YISMILE) 开发团队:KNY三人组 团队logo: 程序logo: 程序功能及使用说明: “失物招领”界面可以浏览发布的失物信息: “发布信息”界面用户可以针对物品类 ...
- 四则运算level2
package j; import java.util.Scanner; public class Main { public static void main(String[] args) { Sc ...
- 第二个Sprint冲刺第 八天(燃尽图)
因为今天停电了,所以我们也休息一天!
- ElasticSearch 2 (22) - 语言处理系列之标记规范化
ElasticSearch 2 (22) - 语言处理系列之标记规范化 摘要 将文本拆解成标记只是工作的一半.为了使这些标记更容易被搜索到,它们需要经过一个规范化的处理过程,以移除相同单词间不重要的差 ...
- remote desktop software
remote desktop software remote desktop https://www.microsoft.com/zh-cn/p/microsoft-remote-desktop/9w ...
- information_schema系列十一
1: INNODB_CMP 和INNODB_CMP_RESET 这两个表存储的是关于压缩INNODB信息表的时候的相关信息, Column name Description PAGE_SIZE Com ...