javabean是一个公共的类,它的构造函数没有输入参数,属性必须声明为private, 方法必须声明为 public,用一组SET方法设置内部属性,用一组GET方法获取内部属性,是一个没有主方法的类
CartBean.java:
package shopBeans;
import java.sql.*;
import java.util.Vector;
import shopBeans.ConnDB;
import shopBeans.Convert;
public class CartBean{
public String p_id;
public float p_price;
public String p_header;
public int p_number;
ConnDB conn=new Convert();
Vector cart=null;
ResultSet rs=null;
public Vector addCart(String p_id,Vector cart)
{
this.cart=cart;
String sql="select p_price,p_image from Product where p_id='"+p_id+"'";
rs=conn.doQuery(sql);
float p_price=0;
String p_image="";
try{
if(rs.next())
{
p_price=rs.getFloat("p_price");
p_image=rs.getString("p_image");
}
}
catch(Exception e){}
this.p_id=p_id;
this.p_price=p_price;
this.P_header=p_header;
this.p_number=p_number;
boolean Flag=true;
if(cart==null)
{
cart=new Vector();
}
else{
for(int i=0;i<cart.size();i++)
{
CartBean goodsitem=(CartBean)cart.elementAt(i);
if(goodsitem.p_id.equals(this.p_id))
{
goodsitem.p_number++;
cart.setElementAt(goodsitm,i);
}
}
}
if(Flag){
cart.addElement(this);
return cart;
}
public int deleteCart(int p_id,Vector cart)
{
int id=p_id;
this.cart=cart;
if(cart==null)
{
return 0;
}
else
{
cart.removeElementAt(id);
return 1;
}
}
public CartBean updateCart(Vector cart,int i,String num)
{
this.cart=cart;
CartBean goodsitem=(CartBean)cart.elementAt(i);
String sum1=num;
if(sum1!=null||sum1!="")
{
goodsitem.p_number=Integer.parseInt(sum1);
}
return goodsitem;
}
}
cart_add.jsp:
<%@ page import="java.util.Vector"%>
<%@ page import="shopbean.CartBean"%>
<%@ page import="shopbeans.ConnDB"%>
<body>
<% String p_id=request.getParameter("p_id");
Vector cart=(Vector)session.getAttribute("cart");
cart=cb.addCart(p_id,cart);
if(cart!=null)
{
session.setAttribute("cart",cart);
response.sendRedirect("my_cart.jsp");
}
%>
</body>
JAVABEAN实现编码转换:
Convert.java:
package shopBeans;
import java.util.*;
public class Convert{
public Convert(){}
public String toISO8859(String strvalue)
{
try{
if(strvalue==null)
{return null;}
}
else{
strvalue=new String(strvalue.getBytes("GBK"),"ISO-8859-1");
return strvalue;
}
}
public String toGbk(String strvalue)
{
try
{
if(strvalue==null)
{return "";}
}
else
{
strvalue=new String(strvalue.getBytes("ISO-8859-1"),"GBK");
return strvalue;
}
}
catch(Exception e)
{return "";}
}