Cet article décrit la méthode d'implémentation d'un magasin d'achat basé sur une session dans le développement Web Java. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
package cn.com.shopping; importer java.io.IOException; importer java.util.ArrayList; importer java.util.List; importer javax.servlet.ServletException; importer javax.servlet.http.HttpServlet; importer javax.servlet.http .HttpServletRequest; importer javax.servlet.http.HttpServletResponse; importer javax.servlet.http.HttpSession;//Terminer l'achat public class BuyServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet (demande HttpServletRequest, réponse HttpServletResponse) lance ServletException, IOException { String id=request.getParameter(" identifiant "); Livre book=(Book)Db.getAll().get(id); //Ajouter la solution de session lors de la désactivation des cookies //La solution lors du blocage de la session HttpSession session=request.getSession(false); tous les livres enregistrés depuis la session (panier) 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"); Requête HttpServletRequest, réponse HttpServletResponse) lève ServletException, IOException { doGet(request,response); }}package cn.com.shopping; importer java.io.IOException; importer java.io.PrintWriter; importer java.util.LinkedHashMap; importer java.util.Map; importer javax.servlet.ServletException ;importer javax.servlet.http.HttpServlet;importer javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;//Display book public class ListBookServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet (HttpServletRequest request) , réponse HttpServletResponse) lance ServletException, IOException { réponse.setCharacterEncoding("UTF-8"); réponse.setContentType("text/html;charset=UTF-8"); PrintWriter out=response.getWriter(); out.print("Notre magasin propose les produits suivants :<br/>"); Map<String,Book> map=Db.getAll(); for(Map.Entry<String, Book> Entry:map.entrySet()) { Livre book=entry.getValue(); String url=response.encodeURL("/Session/BuyServlet?id); ="+book.getId()); out.print(book.getName()+"<a href='"+url+"' target='_blank' >Acheter</a><br/>"); } } protected void doPost (requête HttpServletRequest, réponse HttpServletResponse) lance ServletException, IOException { doGet(request,response); }}//Db en tant que classe de base de données Db{ carte statique privée <String,Book> map=new LinkedHashMap(); static { map.put("1", new Book("1","Développement WEB Java","WY","Bon livre")); map.put("2", new Book("2","Développement WEB","zt","Général" )); map.put("3", new Book("3","Programmation","df","Meilleur livre")); map.put("4", new Book("4","Composants informatiques","as","Bons livres en général")); map.put("5", new Book("5","Principes de compilation","ty","Très bien book")); map.put("6", new Book("6","Maintenance du réseau","hj","très bon livre")); } public static Map getAll() { return map; }} //classe de livre Livre{ identifiant de chaîne privée ; nom de chaîne privée ; private String author ; private String description ; public Book() { super(); // TODO Stub du constructeur généré automatiquement } public Book (ID de chaîne, nom de chaîne, auteur de chaîne, description de chaîne) { super(); id; this.name = nom; this.author = author; this.description = description; } public String getId() { return id; } public void setId (String id) { this.id = id; getName() { return name; } public void setName (String name) { this.name = name; } public String getAuthor() { return author; getDescription() { return description; } public void setDescription (String description) { this.description = description }}package cn.com.shopping; java.io.IOException; importer java.io.PrintWriter; importer java.util.List; importer javax.servlet.ServletException; importer javax.servlet.http.HttpServlet; importer javax.servlet.http.HttpServletRequest; importer javax.servlet. http.HttpServletResponse; importer javax.servlet.http.HttpSession ; classe publique SessionCountDemo extends HttpServlet { private static final long serialVersionUID = 1L ; protected void doGet (demande HttpServletRequest, réponse HttpServletResponse) lance ServletException, IOException { réponse.setCharacterEncoding("UTF-8"); réponse.setContentType("text/html;charset=UTF-8"); PrintWriter out=response.getWriter(); HttpSession session=request.getSession(); if(session==null) { out.write("Vous avez N'achetez aucun produit ! "); return; } out.write("Vous avez acheté les produits suivants :"); List<Book> list=(List) session.getAttribute("list"); for(Book book:list) { out.write ( book.getName()); } } protected void doPost (requête HttpServletRequest, réponse HttpServletResponse) lance ServletException, IOException { doGet(demande,réponse);J'espère que cet article sera utile à tout le monde dans la programmation Web Java.