jsp+javaBean购物车的实现

首先写一个购物的页面:carts.html

<html>
<head>
    <title>carts</title>
</head>

 <body bgcolor="white">

<form type=POST action=carts.jsp>
<BR>
请选择要添加或要删除的货物:
<br>
添加:

<SELECT NAME="item">
<OPTION>照相机
<OPTION>汽车

<OPTION>CD机
<OPTION>电脑

<OPTION>jsp实例开发

<OPTION>手机
</SELECT>
<br> <br>
<INPUT TYPE=submit name="submit" value="add">
<INPUT TYPE=submit name="submit" value="remove"></form>
</body>
</html>

其次,carts.jsp是处理页面

<html>
<jsp:useBean id="cart" scope="session" class="sessions.Cart" />
<jsp:setProperty name="cart" property="*" />
<%
 cart.processRequest(request);
%>
<FONT size = 5 COLOR="#CC0000">
<br> 你的购物车中的如下内容::
<ol>
<% 
 String[] items = cart.getItems();
 for (int i=0; i<items.length; i++) {
%>
<li> <% out.print(Cartfilter.Filter.filter(items[i])); %> 
<%
 }
%>
</ol>
</FONT>
<hr>
<%@ include file ="carts.html" %>
</html>
第三步,实现购物功能的javaBean ,   Cart.java

package sessions;

import javax.servlet.http.*;
import java.util.Vector;
import java.util.Enumeration;

public class Cart {
    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 name) {
 item = name;
    }
    
    public void setSubmit(String s) {
 submit = s;
    }

    public String[] getItems() {
 String[] s = new String[v.size()];
 v.copyInto(s);
 return s;
    }
    
    public void processRequest(HttpServletRequest request) {
 if (submit == null) 
     addItem(item);

 if (submit.equals("add"))
     addItem(item);
 else if (submit.equals("remove")) 
     removeItem(item);
 
   reset();
    }

    // reset方法
    private void reset() {
 submit = null;
 item = null;
    }
}

最后,实现处理显示效果的 Filter.javapackage Cartfilter;
public final class Filter {
    public static String filter(String message) {      if (message == null)
            return (null);      char content[] = new char[message.length()];        //把message中的内容
        message.getChars(0, message.length(), content, 0);
        StringBuffer result = new StringBuffer(content.length + 50);
        for (int i = 0; i < content.length; i++) {        //处理页面中特殊符号的显示问题
            switch (content[i]) {
            case '<':
                result.append("&lt;");
                break;
            case '>':
                result.append("&gt;");
                break;
            case '&':
                result.append("&amp;");
                break;
            case '"':
                result.append("&quot;");
                break;
            default:
                result.append(content[i]);
            }
        }
        return (result.toString());    }
}


  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值