在书上发现这样的一行代码(参看代码注释):
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>在线购书页面</title>
</head>
<body>
<!--[color=#800000]这里type="post" 但如果换成method="post",运行程序就不是预期结果了,form标签有type属性吗?-->
<form type="post" action="shopHandle1.jsp">
<br>
请选择要添加或删除图书种类:
<hr>
添加商品:
<select name="item">
<option>《Java程序设计与项目实训教程》</option>
<option>《JSP程序设计技术教程》</option>
<option>《JSP程序设计与项目实训教程》</option>
<option>《Struts2+Hibernate框架技术教程》</option>
<option>《Web框架技术(Struts2+Hibernate+Spring3)教程》</option>
<option>《Java Web技术整合应用与项目实战》</option>
</select>
<br>
<hr>
<input type=submit name="submit" value="添加"/>
<input type=submit name="submit" value="删除"/>
</form>
</body>
</html>
以下是shopHandle1.jsp(数据处理页面):
<%--
Document : shopHandle
Created on : 2012-3-17, 23:16:47
Author : Administrator
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>已购书信息</title>
</head>
<body>
<body>
<jsp:useBean id="cart" scope="session" class="ch08.Shop"/>
<jsp:setProperty name="cart" property="*"/>
<%
cart.processRequest(request);
%>
<br> 您已选购的书有:
<ol>
<%
String[] items=cart.getItems();
for (int i=0;i<items.length;i++){
%>
<li> <%= items[i] %>
<%}%>
</ol>
<br><hr><hr>
<%@include file ="shop1.jsp"%>
</body>
</html>
这是JavaBean:Shop.java
package ch08;
import java.util.Vector;
import javax.servlet.http.HttpServletRequest;
public class Shop {
private Vector v=new Vector();
private String submit=null;
private 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);