Java Web开发之基于Session的购物商店实现方法

网友投稿 198 2023-07-27


Java Web开发之基于Session的购物商店实现方法

本文实例讲述了java Web开发之基于Session的购物商店实现方法。分享给大家供大家参考,具体如下:

package cn.com.shopping;

import java.io.IOException;

import java.util.ArrayList;

import java.util.List;

import javhttp://ax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

//完成购买

public class BuyServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String id=request.getParameter("id");

Book book=(Book)Db.getAll().get(id);

//再加上那个关闭Cookie时session的剞劂方案

//阻止session的时候解决方案

HttpSession session=request.getSession(false);

//从session中得到用户的保存所有书的集合(购物车)

List list=(List)session.getAttribute("list");

if(list==null)

{

list=new ArrayList();

session.setAttribute("list", list);

}

list.add(book);

String url=response.encodeRedirectURL("/Session/SessionCountDemo");

response.sendRedirect(url);

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doGet(request,response);

}

}

package cn.com.shopping;

import java.io.IOException;

import java.io.PrintWriter;

import java.util.LinkedHashMap;

import java.util.Map;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

//显示书

public class ListBookServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

response.setCharacterEncoding("UTF-8");

response.setContentType("text/html;charset=UTF-8");

PrintWriter out=response.getWriter();

HttpSession session=request.getSession();

out.print("本店有如下的商品:
");

Map map=Db.getAll();

for(Map.Entry entry:map.entrySet())

{

Book book=entry.getValue();

String url=response.encodeURL("/Session/BuyServlet?id="+book.getId());

out.print(book.getName()+"购买
");

}

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doGet(request,response);

}

}

//Db作为数据库

class Db

{

private static Map map=new LinkedHashMap();

static

{

map.put("1", new Book("1","Java WEB开发","WY","好书"));

map.put("2", new Book("2","WEB开发","zt","一般"));

map.put("3", new Book("3","程序设计","df","较好书"));

map.put("4", new Book("4","计算机组成","as","一般好书"));

map.put("5", new Book("5","编译原理","ty","很好书"));

map.put("6", new Book("6","网络维护","hj","非常好书"));

}

public static Map getAll()

{

return map;

}

}

//书

class Book

{

private String id;

private String name;

private String author;

private String description;

public Book() {

super();

// TODO Auto-generated constructor stub

}

public Book(String id, String name, String author, String description) {

super();

this.id = id;

this.name = name;

this.author = author;

this.description = description;

}

public String getId() {

return id;

}

public void setId(String id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getAuthor() {

return author;

}

public void setAuthor(String author) {

this.author = author;

}

public String getDescription() {

return description;

}

public void setDescription(String description) {

this.description = description;

}

}

package cn.com.shopping;

import java.io.IOException;

import java.io.PrintWriter;

import java.util.List;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

public class SessionCountDemo extends HttpServlet {

private static final long serialVersionUID = 1L;

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

response.setCharacterEncoding("UTF-8");

response.setContentType("text/html;charset=UTF-8");

PrintWriter out=response.getWriter();

HttpSession session=request.getSession();

if(session==null)

{

out.write("您没买任何的商品!");

return;

}

out.write("您购买了如下的商品:");

List list=(List) session.getAttribute("list");

for(Book book:list)

{

out.write(book.getName());

}

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doGet(request,response);

}

}

希望本文所述对大家Java web程序设计有所帮助。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java中float类型的范围及其与十六进制的转换例子
下一篇:JDBC操作数据库的增加、删除、更新、查找实例分析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~