购物车jsp代码(购物车jsp代码实例数据库MySQL)
admin 发布:2022-12-19 23:00 159
本篇文章给大家谈谈购物车jsp代码,以及购物车jsp代码实例数据库MySQL对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
jsp购物车代码
//shopping.html
html
headtitleshopping stor/title/head
body
form action="carts.jsp" target="post"
br
please select the item that you want to buy
br
select name="item"
optionbook:old man and the sea
optionx-box game machine
optionmp3 player
optioncce
optionbook:jsp programming
optioncd "the endless love"
optiondvd "gone with the wind"
/select
br
input type="submit" name="submit" value="add"
input type="submit" name="submit" value="remove"
/form
/body
/html
------------------------------------------------------------------
//carts.jsp
%@page contentType="text/html;charset=ISO8859_1" %
html
jsp:useBean id="cart" scope="session" class="test.DummyCart"/
jsp:setProperty name="cart" property="*"/
%
cart.processRequest();
%
br
ol
you have chosen these items:
%
String []items=cart.getItems();
for(int i=0;iitems.length;i++)
{
%
li%=items[i] %/li
%
}
%
/ol
hr
%@include file="shopping.htm" %
/html
---------------------------------------------------------------------//DummyCart.java
package test;
import javax.servlet.http.*;
import java.util.Vector;
import java.util.Enumeration;
public class DummyCart
{
Vector v = new Vector();
String submit=null;
String item= null;
private void addItem(String name)
{
v.addElement(name);
}
private void removeItem(String name)
{
v.removeElement(name);
}
public void setItem(String s)
{
item=s;
}
public void setSubmit(String s)
{
submit=s;
}
public String[] getItems()
{
String []s=new String[v.size()];
v.copyInto(s);
return s;
}
public void processRequest()
{
if(submit==null)
addItem(item);
if(submit.equals("add"))
addItem(item);
else if (submit.equals("remove"))
removeItem(item);
reset();
}
private void reset()
{
submit=null;
item=null;
}
}
----------------------------------------------------------------------
上面是一个简单的例子,功能都能实现,对网页效果要求更漂亮些的可做一些修改。
jsp网上购物代码及操作!
1.index.jsp登陆界面:
%@ page language="java" import="java.util.*" pageEncoding="GB2312"%
%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%
%session.invalidate();% %--销毁所有session对象--%
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
html
head
base href="%=basePath%"
title购物车/title
meta http-equiv="pragma" content="no-cache"
meta http-equiv="cache-control" content="no-cache"
meta http-equiv="expires" content="0"
meta http-equiv="keywords" content="keyword1,keyword2,keyword3"
meta http-equiv="description" content="This is my page"
!--
link rel="stylesheet" type="text/css" href="styles.css"
--
/head
body
center
hr
请输入用户名,默认的为Guest
form action="checklogin.jsp" mothod=get
table width="40%" border="1"
tr bgcolor="#336600"
tddiv align="center"font color="FFFFFF"用户登陆/font/div/td
/tr
tr align="center" bgcolor="#CCCCCC"
td用户名:input type="password" name="userID"/td
/tr
tr align="center" bgcolor="#CCCCCC"
td口 令:input type="password" name="password"/td
/tr
tr align="center" bgcolor="#CCCCCC"
tdinput type="submit" value="登陆"/td
/tr
/table
/form
/center
/body
/html
2.checklogin.jsp登陆认证页面:
%@ page language="java" import="java.util.*" pageEncoding="GB2312"%
%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%
jsp:useBean id="Car" class="web.Car" scope="session"
jsp:setProperty property="*" name="Car"/
/jsp:useBean
%session.setMaxInactiveInterval(900); % %--设置session超时为30分--%
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
html
head
base href="%=basePath%"
titleMy JSP 'checklogin.jsp' starting page/title
meta http-equiv="pragma" content="no-cache"
meta http-equiv="cache-control" content="no-cache"
meta http-equiv="expires" content="0"
meta http-equiv="keywords" content="keyword1,keyword2,keyword3"
meta http-equiv="description" content="This is my page"
!--
link rel="stylesheet" type="text/css" href="styles.css"
--
/head
body
%
String nextpage;
if(Car.getUserID().equals("Guest"))
nextpage="car.jsp";
else
nextpage="index.jsp";
%
jsp:forward page="%=nextpage%"/jsp:forward
/body
/html
3.car.jsp购物车页面
%@ page language="java" import="java.util.*" pageEncoding="GB2312"%
%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%
%@ page import="java.util.*" %
%@ page import="web.Car" %
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
html
head
base href="%=basePath%"
title购物车/title
meta http-equiv="pragma" content="no-cache"
meta http-equiv="cache-control" content="no-cache"
meta http-equiv="expires" content="0"
meta http-equiv="keywords" content="keyword1,keyword2,keyword3"
meta http-equiv="description" content="This is my page"
!--
link rel="stylesheet" type="text/css" href="styles.css"
--
/head
body
br%@ include file="header.jsp" %
hr
font size="2"
jsp:useBean id="Car" class="web.Car" scope="session"
/jsp:useBean
pfont color="#804040" face="楷体_GB2312"
strong百货商场,请尽情的选购商品添加到购物车!/strong
/font
%String str=response.encodeRedirectURL("add.jsp"); %
form action="%=str %" method="post" name="form"
select name="item" value="没选择"
option value="TV"电视机/option
option value="apple"苹果/option
option value="coke"可口可乐/option
option value="milk"牛奶/option
option value="tea"茶叶/option
/select
pfont color="#804040" face="楷体_GB2312"
输入购买的数量:
/font
input type="text" name="mount"
p
input type="radio" name="unit" value="个"个
input type="radio" name="unit" value="公斤"公斤
input type="radio" name="unit" value="台"台
input type="radio" name="unit" value="瓶"瓶p
input type="submit" value="提交添加"
/form
pfont color="#804040" face="楷体_GB2312"你的购物车里有如下商品:/font
font color="#FF8040" size="2"
%
Hashtable list=Car.list_h();
Enumeration enums=list.elements();
while(enums.hasMoreElements()){
String goods=(String) enums.nextElement();
byte b[]=goods.getBytes("ISO-8859-1");
goods=new String(b);
out.println("br"+goods);
}
%
/font
% String strl=response.encodeRedirectURL("selectRemoveGoods.jsp");%
form action="%=strl %" method="post" name="form"
input type="submit" value="修改购物车中的商品"
/form
/font
%@ include file="tail.jsp" %
/body
/html
4.add.jsp 增加物品:
%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%
%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
html
head
base href="%=basePath%"
title购物车/title
meta http-equiv="pragma" content="no-cache"
meta http-equiv="cache-control" content="no-cache"
meta http-equiv="expires" content="0"
meta http-equiv="keywords" content="keyword1,keyword2,keyword3"
meta http-equiv="description" content="This is my page"
!--
link rel="stylesheet" type="text/css" href="styles.css"
--
/head
body
%@ include file="header.jsp" %
hr
font size="2"
jsp:useBean id="Car" class="web.Car" scope="session"/jsp:useBeanbr
jsp:setProperty name="Car" property="*"/
%Car.add_h();%
font face="楷体_GB2312"
font color="#FF8040" size="2"
p您的购物车有如下商品:
%
Hashtable list=Car.list_h();
Enumeration enums=list.elements();
while(enums.hasMoreElements()){
String goods=(String) enums.nextElement();
byte b[]=goods.getBytes("ISO-8859-1");
goods=new String(b);
out.println("br"+goods);
}
%
/font
%String str=response.encodeRedirectURL("car.jsp"); %
br
form action="%=str %" method="post" neme="form"
input type="submit" value="继续购物"
/form
%String strl=response.encodeRedirectURL("selectRemoveGoods.jsp"); %
br
form action="%=strl %" method="post" neme="form"
input type="submit" value="修改购物车中的物品"
/form
/font
/font
%@ include file="tail.jsp"%
/body
/html
5.selectRemoveGoods.jsp选择删除商品:
%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%
%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%
%@ page import="java.util.*" %
%@ page import="web.Car" %
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
html
head
base href="%=basePath%"
title购物/title
meta http-equiv="pragma" content="no-cache"
meta http-equiv="cache-control" content="no-cache"
meta http-equiv="expires" content="0"
meta http-equiv="keywords" content="keyword1,keyword2,keyword3"
meta http-equiv="description" content="This is my page"
!--
link rel="stylesheet" type="text/css" href="styles.css"
--
/head
body
br%@ include file="header.jsp" %
hr
jsp:useBean id="Car" class="web.Car" scope="session"
/jsp:useBeanbr
p选择从购物车中删除的物品:
%String str=response.encodeRedirectURL("removeWork.jsp"); %
form action="%=str %" method="post" name="form"
select name="deleteitem" size="1"
option value="TV"电视机/option
option value="apple"苹果/option
option value="coke"可口可乐/option
option value="milk"牛奶/option
option value="tea"茶叶/option
/select
input type="submit" value="提交删除"
/form
font face="楷体_GB2312"
font color="#FF8040" size="2"
p您的购物车有如下商品:
%
Hashtable list=Car.list_h();
Enumeration enums=list.elements();
while(enums.hasMoreElements()){
String goods=(String) enums.nextElement();
byte b[]=goods.getBytes("ISO-8859-1");
goods=new String(b);
out.println("br"+goods);
}
%
/font/font
%String strl=response.encodeRedirectURL("car.jsp"); %
form action="%=strl %" method="post" neme="form"
input type="submit" value="继续购物"
/form
%@include file="tail.jsp" %
/body
/html
6.removeWork.jsp删除页面:
%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%
%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%
%@ page import="java.util.*" %
%@ page import="web.Car" %
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
html
head
base href="%=basePath%"
title购物车/title
meta http-equiv="pragma" content="no-cache"
meta http-equiv="cache-control" content="no-cache"
meta http-equiv="expires" content="0"
meta http-equiv="keywords" content="keyword1,keyword2,keyword3"
meta http-equiv="description" content="This is my page"
!--
link rel="stylesheet" type="text/css" href="styles.css"
--
/head
body
%@include file="header.jsp" %
hr
font size="2"
jsp:useBean id="Car" class="web.Car" scope="session"
/jsp:useBeanbr
%String str=response.encodeRedirectURL("removeWork.jsp"); %
%String name=request.getParameter("deleteitem");
if(name==null)
name="";
byte c[]=name.getBytes("ISO-8859-1");
name=new String(c);
Car.dele_h(name);
out.println("您删除了货物"+name);%
/font
font face="楷体_GB2312"
font color="#FF8040" size="2"
p您的购物车有如下商品:
%
Hashtable list=Car.list_h();
Enumeration enums=list.elements();
while(enums.hasMoreElements()){
String goods=(String) enums.nextElement();
byte b[]=goods.getBytes("ISO-8859-1");
goods=new String(b);
out.println("br"+goods);
}
%
/font/font
%String strp=response.encodeRedirectURL("car.jsp"); %
form action="%=strp %" method="post" neme="form"
input type="submit" value="继续购物"
/form
%String strl=response.encodeRedirectURL("selectRemoveGoods.jsp"); %
form action="%=strl %" method="post" neme="form"
input type="submit" value="修改购物车中的物品"
/form
/body
/html
7.header.jsp页面头部:
%@ page language="java" import="java.util.*" pageEncoding="GB2312"%
center
========================================================================br
购物车系统br
=======================================================================br
WELCOME!
jsp:getProperty name="Car" property="userID"/
当前时间是:
%=new java.util.Date().toLocaleString() %
br
/center
8.tail页面尾部
%@ page language="java" import="java.util.*" pageEncoding="GB2312"%
center
hr
JSP+TOMCAT购物系统
/center
9.Car.java类
package web;
import java.util.*;
import java.io.*;
public class Car implements Serializable{
Hashtable list=new Hashtable(); //散列表,商品列表
String item="Welcome";
int mount=0; //商品数量
String unit=null; //商品单位
String userID; //用户
public void Car(){
}
public void setItem(String item) {
this.item = item;
}
public void setMount(int mount) {
this.mount = mount;
}
public void setUnit(String unit) {
this.unit = unit;
}
public String getUserID() {
return userID;
}
public void setUserID(String userID) {
this.userID = userID;
}
public Hashtable list_h() {
return list;
}
public void dele_h(String s) {
list.remove(s);
}
public void add_h(){
String str="Name:"+item+"Mount:"+mount+"Unit:"+unit;
list.put(item, str);
}
}
怎么用jsp的session对象编写购物车?
肯定需要用javabean啊,如果要购买的话就把这个物存入到map类型的cart里面,再 调用session.setAttribute方法把hashmap类型的cart放到session里面,然后在购物车那个页面取出购物车里的东西就行了,
DiscBean bean=data.getItem(itemid);这是选中物品的id
得到session对象
HttpSession session = request.getSession();
得到map类型的购物车
Map car=(Map)session.getAttribute("car");
if(car==null){
car=new HashMap();
session.setAttribute("car", car);
}
Set set=car.keySet();得到键的集合
Object[] bea=set.toArray();
boolean isNewDisc = true;
for (Object object : bea) {
DiscItem discitem=(DiscItem)car.get(object);
String discitemid = discitem.getDiscBean().getItemID();
if(itemid.equals(discitemid)){
isNewDisc = false;
discitem.setNumber(discitem.getNumber()+1);
break;
}
}
if(isNewDisc){
car.put(itemid, new DiscItem(bean,1));
}
这个例子就是说我添加一本书的信息,如果是已经在购物车里了,就更新它的数量,如果没在购物车里,就把这个bean保存到购物车,并且数量设为一
在JSP中怎样实现购物车计数?
购物车是电子商务网站中不可缺少的组成部分,但目前大多数购物车只能作为一个顾客选中商品的展示,客户端无法将购物车里的内容提取出来满足自己事务处理的需要,而这一点在有些电子商务活动中很有必要。XML的出现使得网络上传输的数据变得有意义起来,我们可以根据不同的要求以不同的样式将一个购物车的内容显示出来。
本文将详细分析一个由Java实现的基于XML的购物车。下面是一个包含了五件商品的购物车的XML内在结构:它的根元素为cart,total元素表示购物车内的总金额,每个item元素表示一件商品,item里的子元素分别标明了该商品的具体信息,可根据实际情况添加、修改或删除。
在这里,需要建立一个表示购物车的类:XMLCart.java,它是一个JavaBean,所以它包含了一个空的构造函数。这个类包含了购物车的一些基本功能: 生成一个空的购物车,往购物车里添加商品,删除购物车里的商品,改变购物车内商品的数量以及清空购物车等。它拥有一个全局私有变量“private XMLDocument myCart”,myCart用来存储购物车里的详细内容,购物车的基本功能就是对它的操作,它的类型是XMLDocument,即一个XML文档。这样,对购物车的操作就转换成对myCart中的子元素的添加、删除,及元素值的计算、修改等。
1. 清空购物车
清空购物车即生成一个空的购物车。这里空购物车是一个含有根元素cart及其元素total的XML文档,total元素是购物车的总金额,它的初始值为0,其XML具体形式如下:
?xml version=‘1.0’ encoding=‘gb2312’?
cart
total0 /total
/cart
将这个XML字符串由parseString函数转换成XMLDocument存入myCart。
其代码如下:
public void emptyCart() throws IOException,SAXException{
String stringCart=“ ?xml version=‘1.0’encoding=‘gb2312’? ”+
“ cart total0 /total /cart”;
myCart=parseString(stringCart);
}
2. 添加商品
添加商品,即将传入的item元素添加到根元素cart里,
其中item里包括商品详细信息,
同时计算total的值。其代码如下:
public void addItemToCart(String stringItem)
throws IOException,SAXException{
//将item由String转换为XMLDocument
XMLDocument itemAdded=parseString(stringItem);
//取出item节点,并复制它
NodeList itemList=itemAdded.getElementsByTagName(“item”);
Node item=itemList.item(0);
Node cloneItem=item.cloneNode(true);
//如果购物车为空,则构造一个新的购物车
if(isCartEmpty()){
myCart.emptyCart();
}
//如果该商品不在购物车中,则插入该商品,并计算总金额
if(!isItemExist(item,myCart)){
//取myCart的根元素,并将复制的item节点添加到后面
Element cartRoot=myCart.getDocumentElement();
Node cartNode=cartRoot.appendChild(cloneItem);
computeTotal(); //计算总金额
}
}
3. 删除商品
删除商品,即根据商品代码将该商品的item元素
从myCart的根元素cart中删除,
并重新计算total的值:
public void moveItemFromCart(String id){
//取出以item为单位的节点集cartList以及根元素cartRoot
NodeList cartList=myCart.getElementsByTagName(“item”);
Element cartRoot=myCart.getDocumentElement();
//在cartList中查找代码为选中id的商品
for(int x=0;x cartList.getLength();x++){
Node itemNode=cartList.item(x);
String idValue=itemNode.getFirstChild().
getFirstChild().getNodeValue();
//如果找到,则从cartRoot中删除该节点,并跳出循环
if(idValue.equals(id)){
itemNode=cartRoot.removeChild(itemNode);
break;
}
}
computeTotal(); //计算总金额
}
4. 改变商品数量
根据客户在页面上所填的数量,修改myCart中quantity,
并重新计算total:
public void addQuantityToCart(String qnty) throws
IOException,SAXException{
//将传过来的包含商品数量的一组XML字符串转换为XML文档
XMLDocument quantityChanged=parseString(qnty);
//取出包含新数量的quantity节点集和myCart中的quantity节点集
NodeList quantityList=quantityChanged.getElementsByTagName(“quantity”);
NodeList cartList=myCart.getElementsByTagName(“quantity”);
//循环改变商品的数量
for(int x=0;x cartList.getLength();x++){
//将新quantity的值赋给myCart中相应的quantity中去
String quantity=quantityList.item(x).getFirstChild().getNodeValue();
cartList.item(x).getFirstChild().setNodeValue(quantity);
}
computeTotal(); //计算总金额
}
5. 计算总金额
即计算total的值,其中total=∑(price*quantity):
public void computeTotal(){
NodeList quantityList=myCart.getElementsByTagName(“quantity”);
NodeList priceList=myCart.getElementsByTagName(“price”);
float total=0;
//累加总金额
购物车jsp代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于购物车jsp代码实例数据库MySQL、购物车jsp代码的信息别忘了在本站进行查找喔。
版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;
- 上一篇:交易撮合系统代码(平台撮合交易)
- 下一篇:论坛网页代码(论坛网页代码查询)
相关推荐
- 05-09网页代码,网页代码快捷键
- 05-06单页网站的代码(完整的网页代码)[20240506更新]
- 05-06个人主页图片代码(个人主页图片代码怎么弄)[20240506更新]
- 05-06提取微信名片代码(微信名片信息提取)[20240506更新]
- 05-06php后台权限管理代码(php管理员权限)[20240506更新]
- 05-06付费观看代码php(付费观看代码)[20240506更新]
- 05-06在线html执行代码(html怎么运行)[20240506更新]
- 05-06源代码管理资源管理器(资源管理器运行代码)[20240506更新]
- 05-06代码源软件库(程序代码库)[20240506更新]
- 05-06点击弹出密码代码(点击弹出密码代码错误)[20240506更新]
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
- 友情链接