import java.io.IOException
import java.io.PrintWriter
import javax.servlet.ServletException
import javax.servlet.http.HttpServlet
import javax.servlet.http.HttpServletRequest
import javax.servlet.http.HttpServletResponse
import ssc.domain.Book
import ssc.domain.Cart
import ssc.service.BusinessService
//完成书籍购买
public class BuyServlet extends HttpServlet
{
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
String id = request.getParameter("id")
BusinessService service = new BusinessService()
Book book = service.findBook(id)
//添加用户的购物车
Cart cart = (Cart) request.getSession().getAttribute("cart")
if (cart==null)
{
cart = new Cart()
request.getSession().setAttribute("cart", cart)
}
//把书加入到购物车,完成购买
cart.add(book)
request.getRequestDispatcher("/WEB-INF/jsp/listcart.jsp").forward(request, response)
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
doGet(request, response)
}
}
这是我写的购物车
一般购物车用session或者cookie实现。如果要实现session,HTML是不可能如果用cookie可以用js来做。理论上是可以实现。但没多少人做这种事情。
可能是因为这样对用户的认证是一大问题,正常点的网站不可能不实行用户认证的。
不过退一步,用flash做的话,不但变量保存问题可以比较容易解决,网页效果也会好很多。当然,步骤稍微麻烦点,技术要求高点。
通常不会用mailto来发邮件。除非你只想发几句话。稍微大一点的文本就发不了了。