当前位置: 首页 > wzjs >正文

物流网站建设东莞营销型网站建设

物流网站建设,东莞营销型网站建设,一台ip做两个网站,小型公司怎么注册文章目录一.JavaWeb商城项目的促销功能模块【进阶版】开发过程记录1.1 项目背景1.2 需求分析1.3 开发流程/顺序二.促销页面(0.1颗星)2.1 需求介绍2.2 JSP页面2.3效果展示三,商品详情页面(0.2颗星)3.1 需求介绍和效果图3.2 数据库分析3.2 Servlet层3.3 Service层3.4 DAO层3.5 JS…

文章目录

  • 一.JavaWeb商城项目的促销功能模块【进阶版】开发过程记录
    • 1.1 项目背景
    • 1.2 需求分析
    • 1.3 开发流程/顺序
  • 二.促销页面(0.1颗星)
    • 2.1 需求介绍
    • 2.2 JSP页面
    • 2.3效果展示
  • 三,商品详情页面(0.2颗星)
    • 3.1 需求介绍和效果图
    • 3.2 数据库分析
    • 3.2 Servlet层
    • 3.3 Service层
    • 3.4 DAO层
    • 3.5 JSP页面
  • 四,购物车页面(1颗星)
    • 4.1需求介绍和效果图展示
    • 4.2 数据库设计
    • 4.3 Curriculums类
    • 4.4 Servlet层
    • 4.5 Order
    • 4.6 CurriculumsDao
    • 4.7 JSP页面

📗系列专栏: 本文写在上进小菜猪的JavaWeb专栏想要了解更多,请访问本专栏

一.JavaWeb商城项目的促销功能模块【进阶版】开发过程记录

1.1 项目背景

这是内科大2020届计科的JavaWeb的结课大作业。该作业要求设计一个原生的Javaweb项目。

  • 本项目类型为:传统商城
  • 本项目使用原生JavaWeb采用MVC架构,项目包括前台和后台
    • 前台用于用户购买产品
    • 后台用于管理
  • 本项目数据库采用Mysql
  • 本需求难度:0.8颗星
  • 本次项目需求:促销模块(基础版)

本需求接上篇文章:JavaWeb商城项目的促销功能模块【基础版】

1.2 需求分析

系统新增功能扩展或优化功能:大家可以在本系统的基础上进行系统新增功能扩展或优化。如:评价,好评,差评,促销,优惠券,分期付款,售后,销售统计分析等等,这些只是一些提示,并不限于此。大家可以上淘宝、京东等网站找找系统新增功能扩展的思路。 11月5日晚7:00检查系统新增功能。

许多读者看完上篇【JavaWeb商城项目的促销功能模块【基础版】】感觉良好,觉得在此基础上可以再次进行完善功能,所以推出此功能的进阶版。

基础版实现了后台的一个促销功能的添加和删除,并且可以在前台新加的栏目——促销当中得以体现。

本文进阶版,在基础班的功能上新增加了打折的功能,类似优惠券的功能,详看下文解析。

1.3 开发流程/顺序

1.更改促销页面的价格显示。

2.增加数据库的商品字段——促销判断。

3.更改商品详情页面的价格显示。

4.更改购物车的价格计算规则。

难度等级介绍:5颗星为极难,1颗星为极易,依次类推。

二.促销页面(0.1颗星)

2.1 需求介绍

本次任务是实现:某一商品在后台设置为促销商品,让其自动的打6折,效果如下:并且保留2位小数。

image-20221103151048448

2.2 JSP页面

涉及页面为:Curriculumsrecommend_list.jsp

1.我们这里如果打6折,无法避免出现小数除不尽的情况,所以我们引入JSP 标准标签库(JSTL)。在本jsp页面的上部加入:

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

下面这行为EL保留2位小数的标签语句:

<fmt:formatNumber type="number" value="${g.price*0.6 }" pattern="0.00" maxFractionDigits="2"/>

2.使用El语句写一个判断显示的逻辑:

<c:choose>
<c:when test="${t==4}"><span class="item_price">¥ <fmt:formatNumber type="number" value="${g.price*0.6 }" pattern="0.00" maxFractionDigits="2"/></span></c:when>
<c:otherwise><span class="item_price">¥ ${g.price}</span></c:otherwise>
</c:choose>

2.3效果展示

image-20221103151802963

三,商品详情页面(0.2颗星)

3.1 需求介绍和效果图

大致样式如下,美化自己调一下。

image-20221103152338382

3.2 数据库分析

我们观察recommend发现,在后台执行完类型的选择之后,会在recommend数据库里执行添加或者删除操作,观察发现,如果a商品添加到1类型会增加一条数据库记录,如果将a商品再添加2类型,又会增加一条数据库记录。

如果将a商品任意的从类型1或者2删除,那么对应的一条就会被删除。

我思考发现,如果写一个筛选语句,将符合的商品id对于的条目拿出来,如果含有类型为4的,就是正在促销的商品,问题也就解决了。

image-20221103152946007

3.2 Servlet层

1.在Servlet层里写下指定类型的对象列表,调用Service。这里的id为商品id。

List<CommentRecommend> listtype= gService1.getCommenttypeById(id);

2.写一个简单的判断器,判断返回的list里的Type类型有没有包含4。

int flag=0;
for (CommentRecommend object : listtype) {if(object.getType()==4){flag=1;}else {flag=0;}
}

3.将上面的判断结果传递给前端进行判断渲染。

request.setAttribute("flag", flag);

3.3 Service层

com = ComDao.getCommenttypeById(id);

3.4 DAO层

1.写sql语句对目标进行筛选。

String sql = "select * from `recommend` where curriculums_id = ?";
  1. 返回值。
return queryRunner.query(sql, new BeanListHandler<CommentRecommend>(CommentRecommend.class),id);

3.5 JSP页面

本次涉及页面:Curriculums_detail.jsp

1.记得引入JSP 标准标签库(JSTL)。

2.写一个条件渲染。让类型为4的值乘以0.6。然后保留俩位小数。

<c:choose><c:when test="${flag==1}"><span class="item_price">促销商品已打六折:<br/>${g.price}X0.6=¥ <fmt:formatNumber type="number" value="${g.price*0.6 }" pattern="0.00" maxFractionDigits="2"/></span> </c:when><c:otherwise><span class="item_price">¥ ${g.price}</span></c:otherwise>
</c:choose>

image-20221103152529613

四,购物车页面(1颗星)

4.1需求介绍和效果图展示

image-20221103154725890

4.2 数据库设计

1.在商品的数据库里新增加字段:promotion。

如果promotion为4介绍目标商品:为打折商品。

image-20221103154811381

4.3 Curriculums类

新加字段,Promotion为int类型,添加过程和上篇的isPromotion,方法相同,在这里不详细写了。

private int promotion;

4.4 Servlet层

到下面方法的源码中,添加上面数据库新加的字段。

o.addCurriculums(Curriculums);

4.5 Order

1.在addCurriculums方法中,在else里添加下面判断。

if(cu.getPromotion()==4){item = new OrderItem((float) (cu.getPrice()*0.6),1,cu,this);
}

2.当然+1操作返回的,也不能拉下:

if(cu.getPromotion()==4){total = (float) PriceUtils.add(total, cu.getPrice()*0.6);
}
else {total = PriceUtils.add(total, cu.getPrice());
}

3.到了这一步我们尝试添加到购物车,发现还是不能自动打折,不要慌,因为我们promotion字段的值并没有传入到类对象里。

4.6 CurriculumsDao

1.到商品的Dao层,添加promotion字段。在getCurriculumsById方法中。

public Curriculums getCurriculumsById(int id) throws SQLException {QueryRunner r = new QueryRunner(DataSourceUtils.getDataSource());String sql = "select cu.id,cu.name,cu.cover,cu.image1,cu.image2,cu.price,cu.introduction,cu.stock,cu.duration,cu.quantity,cu.promotion,t.id typeid,t.name typename from Curriculums cu,type t where cu.id = ? and cu.type_id=t.id";return r.query(sql, new BeanHandler<Curriculums>(Curriculums.class),id);
}

问题解决了。最后再解决一下前端页面显示问题就ok!

4.7 JSP页面

为了增加用户友好性,写一个简单的权限渲染,因为我们的原价都是整数,打折之后除了尾数为5的都是小数,时间问题和我原价没有以5结尾的商品,故,直接写了一个item.value.price*10%10==0,判断是否有小数的逻辑。

最后进行一下渲染,问题解决了,虽然不是很完美。

<c:choose><c:when test="${item.value.price*10%10==0}"><h3><span>单价: ¥ ${item.value.price}</span></h3></c:when><c:otherwise><h3><span>促销商品单价(打折后): ¥ ${item.value.price}</span></c:otherwise>
</c:choose>
http://www.dtcms.com/wzjs/254221.html

相关文章:

  • 自己做网站买seo赚钱暴利
  • 哪个网站的财经做的好知乎化妆品网络营销策划方案
  • 加强学院网站建设百度首页官网
  • 昆明做商城网站多少钱百度免费下载安装
  • 天津自贸区建设局网站腾讯推广平台
  • 访问同一网站多次怎么做网站?
  • 公司注册网站官网北京百度推广开户
  • 网站开发技术和工具百度推广助手怎么用
  • 昆网站制作在线bt种子
  • 刚做的单页网站怎么预览百度的网址是什么呢
  • 一起装修网北京总部官网网站seo什么意思
  • 网站跟别的做的一样的如何网上免费打广告
  • 企业门户网站需求模板网推渠道
  • 疫情最新动态实时更新seo网站推广报价
  • jsp做网站还推荐友情链接
  • 电商网站开发费用自制网站 免费
  • 福州市建网站公司2345网址导航删除办法
  • 宁波免费网站建站模板网站恶意点击软件
  • 唐山模板网站建设宁波seo网络推广咨询热线
  • 专业的网站建设联系新闻热点最新事件
  • 网络平台营销的特点seo怎么推排名
  • 山东公司网站推广优化站长查询域名
  • 建设企业网站要多少钱如何注册百度账号
  • 有什么做照片书的网站淘宝培训
  • 网站建设互联网加手机优化大师
  • 亚洲成成品网站源码文明seo技术教程网
  • 东莞做网站定制网站建设黄页在线免费
  • 专业做婚纱摄影网站福州短视频seo服务
  • 2013年以前pc网站建设国外网站排名前十
  • wordpress与帝国cmsseo1视频发布会