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:属性值
【注意】
    在页面上面最好不要出现<%%>,而是用jsp标签代替

演示:

<!-- 动作标签:在jsp页面替换java代码1.include动作标签     引入第三方页面与include指令的作用是一样的。include指令特性:被引入的页面不会进行编译include标签特性:被引入的页面会单独的通过编译生成一个java文件(servlet)--><!-- page="" 引入页面的路径 --><jsp:include page="demo1.jsp"></jsp:include><!-- param动作标签参数标签作用:可以在include标签和forward标签中设置参数传递--><!-- 引入demo4.jsp --><jsp:include page="demo4.jsp"><jsp:param value="admin" name="username" /><jsp:param value="123" name="password" /></jsp:include><!-- forward 动作标签   请求转发的标签--><%//特性:地址栏不会发生改变  还是当前页面的路径//特性:如果reqeust保存了值,通过请求转发进行页面跳转,值也会携带到下一个页面//请求转发//request.getRequestDispatcher("demo4.jsp").forward(request, response);%><jsp:forward page="demo4.jsp"><jsp:param value="1122" name="password" /><jsp:param value="123" name="username" /></jsp:forward><!-- JSTL 自定义标签库 --><%--  <c:if>实例化实体对象Users users = new Users(username,password)users.setUserName(username);users.getUserName();<jsp:useBean id=""></jsp:useBean>   等价于实例化对象<jsp:setProperty property="" name=""/>  等价于users.setUserName(username);<jsp:getProperty property="" name=""/>  等价于users.getUserName();--%>

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body><h2>demo4.jsp</h2><%//获取到demo3.jsp中通过param动作标签所设置的参数String username = request.getParameter("username");out.println(username);out.println("啧啧啧");%><hr /><%String password = request.getParameter("password");out.println(password);out.println("哈哈,傻逼");%>
</body>
</html>

拓展:(用户登录)


<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>模拟登录</title>
</head>
<body><form action="doLoginDemo.jsp" method="post"><input type="text" name="username"> <br> <br> <inputtype="password" name="password"> <br> <br> <inputtype="submit" value="登录"></form></body>
</html>

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%//设置编码request.setCharacterEncoding("utf-8");//获取表单提交的值String username = request.getParameter("username");String password = request.getParameter("password");
%>
<!-- 通过useBean动作标签来实例化一个对象进行封装数据 -->
<jsp:useBean id="hh" class="com.news.entity.Users"></jsp:useBean><!-- 设置 -->
<!-- 方法一 -->
<%-- <jsp:setProperty property="*" name="hh" /> --%>
<!-- 方法二 -->
<jsp:setProperty property="username" name="hh" /><!-- 进行数据封装 -->
用户名:<jsp:getProperty property="username" name="hh" />

购物车项目1

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

二、将购物车保存到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 

数据库创建

  • 前台

  1. 包括用户注册,登录  

Html +js+jsp

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

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

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

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

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>购物车界面</title>
</head>
<body>
<frameset rows="14%,*"><frame src="top.html"><frameset cols="20%,*"><frame src="left.html"><frame src="shop.jsp" name="Right"></frameset>
</frameset>
</html>

<%@page import="com.zking.cart.entity.Goods"%>
<%@page import="java.util.List"%>
<%@page import="com.zking.cart.dao.impl.GoodsDaoImpl"%>
<%@page import="com.zking.cart.dao.IGoodsDao"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>购物车</title>
</head>
<body><table border="1" width="100%"><tr><th>商品编号</th><th>商品名称</th><th>商品价格</th><th>商品描述</th><th>商品图片</th><th>商品数量</th><th>商品总价</th><th>操作</th></tr><!-- 调用dao遍历即可 --><%//实例化IGoodsDao igd = new GoodsDaoImpl();List<Goods> listGoods = igd.queryGoodsAll();for (Goods goods : listGoods) {%><tr><td><%=goods.getGid()%></td><td><%=goods.getGname()%></td><td><%=goods.getGprice()%></td><td><%=goods.getGinfo()%></td><td><img src="admin/<%=goods.getGpath()%>" /></td><td><button>+</button> <input type="text" width="5px"></input><button>-</button></td><td>100.0</td><td><a href="">删除</a><button>修改</button></td></tr><%}%></table>
</body>
</html>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>前台左层导航</title>
</head>
<body><ul><li><a href="shop.jsp" target="Right">商品展示</a></li><li><a href="cart.jsp" target="Right">购物车</a></li></ul>
</html>
<%@page import="com.zking.cart.entity.Goods"%>
<%@page import="java.util.List"%>
<%@page import="com.zking.cart.dao.impl.GoodsDaoImpl"%>
<%@page import="com.zking.cart.dao.IGoodsDao"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>商品展示界面</title>
</head>
<body><table border="1" width="100%"><tr><th>商品编号</th><th>商品名称</th><th>商品价格</th><th>商品描述</th><th>商品图片</th><th>操作</th></tr><!-- 调用dao遍历即可 --><%//实例化IGoodsDao igd = new GoodsDaoImpl();List<Goods> listGoods = igd.queryGoodsAll();for (Goods goods : listGoods) {%><tr><td><%=goods.getGid()%></td><td><%=goods.getGname()%></td><td><%=goods.getGprice()%></td><td><%=goods.getGinfo()%></td><td><img src="admin/<%=goods.getGpath()%>" /></td><td><a href="">加入购物车</a></td></tr><%}%></table>
</body>
</html>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<style type="text/css">
h1 {color: azure;
}
</style>
</head>
<body><h1 align="center">糖糖购物商城</h1>
</body>
</html>

JSP标准标签购物车项目相关推荐

  1. JSP标准标签库JSTL总结

    JSP标准标签库JSTL总结 J STL封装了JSP应用的通用核心功能.     标签分5类:核心标签,格式化标签,SQL标签,XML标签,JSTL函数. JSTL库安装     Tomcat安装JS ...

  2. JSP标准标签库(JSTL)--简介

    JSP 标准标签库(JSTL) JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签, ...

  3. JSP标准标签库、通用标签

    JSP标准标签库.通用标签 JSP标准标签库(JSP Standard Tag Library,JSTL)是实现Web应用程序中常见的通用功能的定制标签库集,程序员使用JSTL标签来避免在JSP页面中 ...

  4. JSP标准标签库——JSTL

    JSP标准标签库--JSTL JSTL是实现Web应用程序中常见的通用功能的定制标签库集. JSTL分为5大类: 1. 核心标签库 2. 国际化/格式化标签库 3. 数据库标签库 4. XML标签库 ...

  5. 2011级-csdn-java-张侃—JSP标准标签库

    •          JSP标准标签库(JSP Standard Tag Library,JSTL)是实现Web应用程序中常见的通用功能的定制标签库集,程序员使用JSTL标签来避免在JSP页面中使用脚 ...

  6. Javaweb学习笔记(JSP标准标签库)

    Javaweb学习笔记(JSP标准标签库) JSTL入门 安装和测试JSTL JSTL中的Core标签库 < c:out>标签 标签 标签 < c:catch>标签 标签 标签 ...

  7. 【JSTL】JSP 标准标签库JSTL学习

    JSTL 标签库 1.什么是JSTL 标签库 JSTL 是apache 对EL 表达式的扩展(也就是说JSTL 依赖EL),JSTL 是标签语言!JSTL 标签使用以来非常方便,它与JSP 动作标签一 ...

  8. Java-JSTL(JSP标准标签库)

    前言 从JSP 1.1规范开始,JSP就支持在JSP中使用自定义标签了,自定义标签的广泛使用造成了程序员重复定义,这样就促成了JSTL(JavaServer Pages Standard Tag Li ...

  9. JSP 标准标签库(JSTL)

    依赖包: jstl.jar standard.jar 分为五类: JSTL核心库 [基本的I/O, 流程控制, 循环 等功能]  数据库标签库 [基本的数据库操作功能]  XML操作标签库 [用来处理 ...

  10. JSTL (JSP标准标签库)

    JSTL的标签库 c标签(core标签库) fmt标签(国际化标签库) xml标签 sql标签 jstl函数库(EL函数) JSTL的使用 1.引入JSTL的jar包 2.新建jsp页面 3.在jsp ...

最新文章

  1. Java中非法参数的异常_Java中的异常
  2. leetcode 878. Nth Magical Number | 878. 第N个神奇的数字(数学问题)
  3. oracle crf路径,说说 ora.crf 那些事
  4. python itertools combination_Python itertools.combinations 和 itertools.permutations 等价代码实现...
  5. 如何关闭子线程?征集析构函数与多线程的讨论!
  6. 小程序中canvas绘制网络图片
  7. python文件都是脚本吗_.py文件是python脚本吗
  8. FreeSwitch明明已经设置了H264,为什么通话时还是别的格式(如VP8)
  9. 【文摘】《创新者》-沃尔特·艾萨克森
  10. python批量制作ppt_实例25_批量生成PPT版荣誉证书
  11. adb的环境搭建,下载和卸载app
  12. Postman——pre-request产生随机字符串和随机数字传给request body
  13. linux下iso镜像的制作工具,ISO镜像文件制作转换工具(AnyToISO)
  14. SEO知识:百度谷歌搜狗谷歌必应搜索引擎蜘蛛的特点
  15. 如何在AD软件中创建自定义区域铺铜
  16. 网上哪里打印资料便宜?
  17. 在线压缩和改变图片大小的免费方法
  18. 177本名著浓缩成了177句话!
  19. 我学习Javascript的心得体会与Javascript的小总结
  20. springboot大学生兼职网站开发与设计毕业设计源码311734

热门文章

  1. wpe修改充值_wpe实现网络游戏修改
  2. 浅谈逆向——从案例谈OD的使用(OD的使用2)
  3. 鞋店商城小程序开发价值
  4. Grails Quartz插件 定时调度任务
  5. 计算机教师个人能力不足,教师个人信息技术能力分析优势和不足.docx
  6. Android小项目--2048小游戏
  7. [译文]GBAGuy的GBA ASM教材 第一章 概述
  8. 前端问题——报错Uncaught ReferenceError:saveScore is not defined at HTMLButtonElement.onclick
  9. 湖南师范大学计算机网络基础教学平台,基于网络的师徒式教学平台的设计与实现...
  10. python从入门到精通 清华大学出版社-清华大学出版社 python