需求:用户浏览商品,不需要登陆。点击添加到购物车时,引导用户登陆。点击修改时候,修改商品信息。

需求详细:

a:如果是普通的查询-列出数据库数据-显示

b:如果是点击添加库存-检测到没有登陆-跳转到登陆页面-登陆后-列出之前搜索的商品信息-再次点击添加到库存-添加到数据库

c:当用户点击修改商品时候直接修改商品

环  境: springmvc+mybatis框架, Tomcat7.0.5,jdk1.7,myeclipse8.5,

知识点:MySql、session、Jquery、Ajax、mapper映射、乱码、参数绑定、异常处理、上传图片、Json交互、拦截器的应用等。

实现流程

a:用户登陆首页,输入搜索信息并提交。在跳转到商品查询对应的ItemsController的queryItems方法之前,LoginInterceptor拦截器会进行拦截,检查到访问的是公有网址,然后放行。

b:此时进入ItemsController控制器中,它调用业务层的查询方法,(业务层调用dao层的查询方法)查询数据库中商品信息数据并设置到model中,然后视图jsp采用JSTL的标签技术进行model的解析和显示。

c:用户点击添加到库存按钮时,拦截器拦截并存储点击的id到session中,并跳转到登陆界面。用户登陆后,拦截器存储其username到session中。然后跳转到查询控制器,查询控制器根据id查询相关商品信息并返回响应信息。此时需要用户再次点击“添加到库存”按钮,采用Ajax通信,发送JSON串到响应controller中,然后解析并存储到数据库中。添加成功后,Ajax调用响应函数弹出添加成功对话框。

d:当用户点击修改商品时候,调到指定页面,修改完毕,提交时存储数据到数据库中。

关键点:

1 数据库定义4张表:用户表、商品表、订单表、订单明细表

2 编写登陆拦截器。放行对公有网址访问,拦截对添加商品、用户登陆请求访问。拦截前会记录用户搜索商品的id和用户名和密码到session中。

3 登陆成功后采用Ajax通信将数据通过JSON方式传递到后台进行数据库存储。

4 dao层、service层、controller层,都采用注解方式初始化变量。

5 同样一个 添加到库存到按钮,未登陆时候,执行登陆拦截。已经登陆状态,执行Ajax通信。这里采用JSTL方式判断Model域中是否有用户名的方式。

6所有数据比如商品名称和日期等都是从数据库取出的。

练习项目的成果截图(项目虽小,五脏俱全)

首页:

 

搜索笔记本信息




                                                                                                                               注册界面


 

 

查询订单页面:




我的练习项目: 模拟淘宝搜索商品、添加商品到购物车功能、修改商品信息功能相关推荐

  1. 利用python从网页查找数据_利用Python模拟淘宝的搜索过程并对数据进行可视化分析...

    数据挖掘入门与实战 公众号: datadw 本文讲述如何利用Python模拟淘宝的搜索过程并对搜索结果进行初步的数据可视化分析. 搜索过程的模拟:淘宝的搜索页面有两种形式, 一种形式是, 2019/2 ...

  2. 使用selenium模拟浏览器,获取淘宝搜索页面商品名称销量等信息

    作者:李忠林 Github: https://github.com/Leezhonglin Gitblog: https://leezhonglin.github.io/ 本文仅用于学习. 使用自动化 ...

  3. HTML+CSS零基础学习笔记(五)— 模拟淘宝首页(静态)

    内容概览 模拟淘宝首页(静态) 一.项目重难点 二.效果图及源码 模拟淘宝首页(静态) 一.项目重难点 样式重置:在实际开发过程中,我们往往会新建一个单独的CSS文件(reset.css),用于对应H ...

  4. jquery+原生js模拟淘宝输入框下拉提示

    1.概述: 模拟淘宝.百度的搜索框,当用户输入时,会自动下拉提示关键字,使用组件jquery.js(1.12.1),jquery-ui.js(1.12.1).jquery-ui.css(1.12.1) ...

  5. 零基础带你用python模拟淘宝登录

    经过一段时间的学习,并参考各路大神的文章,总结出一些比较适合小白的网络爬虫的小技巧.跟着笔者的思路,循序渐进,可以慢慢找到一点小感觉. 开发环境 笔者选用的是vs code,轻量级,支持各种插件安装. ...

  6. 价值十个亿的淘宝搜索功能

    看到这标题,是不是有小伙伴忍不住点进来看看? 标题党-- 不不不,咱还是来点干货 先来看看淘宝搜索的分类 可以支持分类多选,即如下报文格式: {"品牌":["啄木鸟&qu ...

  7. Python-爬取淘宝搜索结果

    前言 我们如果想买一个东西,可以去淘宝搜索,然后选取心仪的商品存到购物车,然后做综合对比:但是对于程序员来说我们可以把搜索结果爬取下来,爬取解析店铺评分.商品价格.店铺等级.购买人数等等,综合比较,还 ...

  8. 对于杯子、淘宝搜索框的测试用例

    对于杯子的测试 功能 水到容量的一半 水到规定的刻度线 水杯容量刻度与其他水杯一致 盖子拧紧水到不出来 烫手验证 性能 使用的最大次数或时间 掉到地上不易损坏 盖子拧到什么程度水倒不出来 保温时间长 ...

  9. 一个闲鱼挂机项目,让淘宝用户彻底“躺赢”

    闲鱼挂机项目,单号日收益约3元,这个项目比较稳定,并且目前做的人比较少,值得操作,每天仅需2分钟,可无限放大 一.项目介绍 闲鱼币可以用来推广闲鱼的商品,所以很多人需要闲鱼币,也由此产生了买卖:我们通 ...

  10. 极客日报:三星嘲讽iPhone13:120Hz高刷我们早用上了;华为撤回对OPPO欧洲专利的异议;淘宝搜索崩了登上热搜

    一分钟速览新闻点! 淘宝搜索崩了登上热搜 80后王腾担任小米中国区销售运营一部负责人 华为撤回对OPPO欧洲专利的异议 探探启动全新Logo,App界面全面升级 百度诉搜狗获赔55万 库克发布会后接受 ...

最新文章

  1. 图论-欧拉路(UVA10054)(HDU1116)
  2. Reporting Services 的多值参数究竟能否用在数据集获取途径为存储过程的情景呢?...
  3. trunk中继链路,以太网通道
  4. 王者荣耀全栈项目部署到阿里云服务器笔记
  5. C#中获取指定目录下所有目录的名称、全路径和创建日期
  6. 计算机科学与技术专业导论_教育部最新公布!西安工业大学新增4个本科专业!...
  7. c++primer 5th第15章基础、课后习题自己解析、心得体会等
  8. linux 命令调试分析core文件,linux环境下dump vmcore文件分析
  9. pycharm(windows)安装及其设置中文菜单
  10. 远程计算机怎么安装软件安装,轻松一步把电脑上的软件远程安装到电视上!
  11. Databricks文档05----使用 Azure Databricks 连接SQL Server查询数据
  12. 液晶拼接处理器_创新维OLED拼接屏施工单位操作说明
  13. 计算机硬件主板各部分内部结构,电脑主板各个模块介绍与原理解读
  14. webhook机器人php源码,机器人之钉钉机器人webhook 对接 ThinkPHP3.2 实现Bug告警通知...
  15. 【工程师学算法】工程常用算法(二)—— 卡尔曼滤波(Kalman Filter)
  16. ZigBee组网实验:多终端节点向协调器发送数据amp;协调器给终端节点发送数据
  17. matlab中si是什么意思,Sitsang是什么意思
  18. MOF-74(Zn), CAS:1033723-90-8
  19. mysql 1146错误 修复6,MySQL中出现错误1146时出现问题
  20. 物联网云平台DTU Modbus协议 上位机 下位机 源码 源代码 程序

热门文章

  1. 从零开始学MATLAB(一)MATLAB基础知识
  2. 给视频加上自己想要的水印,再也不用担心被盗图了
  3. DayDayUp:2019.12.31罗振宇2020年跨年演讲《时间的朋友》读后有感—思维决定一个人的上限,能力决定一个人的下限
  4. c语言rst关系,为什么服务器突然回复RST——小心网络中的安全设备
  5. 在麒麟桌面操作系统编译安装postgresql的经历
  6. 已经阻止语音服务器,关闭语音服务器
  7. 粘性布局 以及粘性布局失效问题
  8. 宇宙背景声子低温超导探测器
  9. 通过vdi备份linux,centos/ubuntu挂载vmdk、 vdi为块设备的方法(非vdfuse)
  10. 使用UE4开发VR项目_性能优化(三)_思路和方法