JavaWeb_12(JSP标准动作标签&购物车项目布置)

本文介绍了JSP的基础知识,包括三大指令、九大内置对象和四大作用域。重点讲解了如何使用JSP标准动作实现页面交互,如包含、转发、实例化Bean等。在购物车应用场景中,阐述了如何利用session存储购物数据,以及在用户注册、登录、商品管理、订单处理等方面的实现思路。此外,还讨论了购物车数据持久化到数据库和session的优缺点,并给出了数据库设计示例。
摘要由CSDN通过智能技术生成

jsp的3694


3:三大指令
page|include|taglib    (EL+JSTL)
9:九大内置对象
out  
request
response
session
application
config
page 作用域  类似java的this对象
pageContext  内置对象的全局
exception  异常对象

4:四大作用域  存储值
page
request
session
application

6:动作标签:jsp20个左右
常用的:6个

目的:替代jsp页面中的java代码


        jsp的标准动作(jsp的标准标签)
==============================================================
【注意】
    在页面上面最好不要出现<%%>,而是用jsp标签代替


常用jsp标签(自带):
1.<jsp:include page="页面"> 包含
2.<jsp:param name="name" value="va"> 传参
3.<jsp:foward page="页面"> 转发 *****

4.<jsp:useBean>相当于实例化类    Users users = new Users();
5.<jsp:setProperty>给useBean属性设置值
6.<jsp:getProperty>取值


----4.userBean用法:

<jsp:useBean id="" beanName=""  type=""  class="" scope="">

     id: 对象名 * 
     class:类  创建对象时,完全限定名(包名+类名)
     type:类型 调用对象时 *  (可以用抽象父类或者接口)
     scope:作用域 (page *  request session  application)

----5.setProperty用法:

 <jsp:setProperty  name=""  property=""  value="">

  name:useBean 的id
  property:属性名(要注意必须跟实体类中的属性名保持一致)
  value:属性值

--------------------------------------------------------------

掌握
1、直接通过value赋值
2、通过【表单】赋值***

----------------------------------
了解web.xml的欢迎界面列表
但凡是改了web.xml的代码都必须重新发布重启服务最好

购物车shop

  • 前台
  1. 包括用户注册,登录 

Html +js+jsp

考虑自动登录(cookie实现  登录页面)

  1. 进入购物页面购物(数据均来自数据库),商品展示页面shop.jsp显示如下(大概显示效果如下,为了界面美观,可以加入相应的商品图片 )(该页面相当于游客页面)

  1. 点击加入购物车的同时,要将数据(订单项的集合)保存到session中,再转入下图购物车页面cart.jsp(必须登录才能进)(大概效果如下)[session中取出订单项集合]

    1. 其中商品数量可以在修改数量以后点击【修改】按钮进行修改
    2. 删除按钮则可以删除该购买商品(必须有提示)
    3. 点击继续购物后应该转入购物页面继续购物
    4. 点击结算后应该转入结账页面,提示用户当前购物车总金额,并清空购买信息。
    5. 订单项组成:商品基本信息Goods  数量num  单个商品的总价sumprice

  • 后台
  1. 包括对商品的管理(考虑删除的真正含义)以及 分页 下架  状态列0 1
  2. 包括对用户的管理(考虑删除的真正含义)以及 分页
  3. **思考订单&订单项(一个订单可以包含多个订单项)的概念
  4. 解决两个问题:订单项覆盖问题 加同一个商品重复问题

  • 数据库设计 CartDB

create table goods

(

       gid                       --商品编号

       gname                  --商品名称

       gprice                   --商品单价

       ginfo                    --商品描述信息

       gpath                   --商品图片路径

)

涉及的技术点:

 JDBC

   

 Entity

  --Goods

  --User

 

Session:购物车(增删改查)

一、将购物车保存到数据库(永久的)
--优点:只要你登录了,并且选购了,不管你换不换设备,数据仍然在,方便了用户。
--缺点:太占数据库的内存,性能差,效率低


二、将购物车保存到session中(临时的)
--优点:性能佳 效率高
--缺点:会话具有时效性,超时数据会消失

----提示语法:
存到session: session.setAttribute(键String,值Object)
从session取值:session.getAttribute(键) 返回Object

----我们是将订单项的集合List<OrderItem>保存到session中 

实体类:
User
Goods(商品类):gid gname gprice ginfo gpath(图片路径)
OrderItem(订单项类):goods oinum oiprice=数量*单价(goods.getGprice())

doshop.jsp:接收gid 根据gid拿到商品对象 形成订单项 加到集合中保存到session 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值