В этой статье описывается метод реализации магазина покупок на основе сеансов в веб-разработке на Java. Поделитесь им со всеми для справки, подробности следующие:
пакет cn.com.shopping;импорт java.io.IOException;импорт java.util.ArrayList;импорт java.util.List;импорт javax.servlet.ServletException;импорт javax.servlet.http.HttpServlet;импорт javax.servlet.http .HttpServletRequest;импорт javax.servlet.http.HttpServletResponse;импорт javax.servlet.http.HttpSession; // Завершите покупку. public class BuyServlet расширяет HttpServlet { Private static Final Long SerialVersionUID = 1L; идентификатор"); Книга book=(Book)Db.getAll().get(id); //Добавляем решение сеанса при отключении файлов cookie //Решение при блокировке сеанса HttpSession session=request.getSession(false); // Получаем пользовательскую коллекцию все книги, сохраненные из сеанса (корзина) 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); Запрос HttpServletRequest, ответ HttpServletResponse) выдает ServletException, IOException { doGet (запрос, ответ); }} пакет cn.com.shopping; импорт java.io.IOException; импорт java.io.PrintWriter; импорт java.util.LinkedHashMap; импорт java.util.Map; импорт javax.servlet.ServletException ;импортировать javax.servlet.http.HttpServlet;импортировать javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;//Показать книгу общедоступного класса ListBookServlet расширяет HttpServlet {private static Final long SerialVersionUID = 1L; , ответ HttpServletResponse) выдает ServletException, IOException { response.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); PrintWriter out=response.getWriter(); HttpSession session=request.getSession(); out.print("В нашем магазине есть следующие товары:<br/>"); Map<String,Book> map=Db.getAll(); for(Map.Entry<String, Book> enter:map.entrySet()) { Book book=entry.getValue(); String url=response.encodeURL("/Session/BuyServlet?id ="+book.getId()); out.print(book.getName()+"<a href='"+url+"' target='_blank' >Buy</a><br/>"); } } protected void doPost(запрос HttpServletRequest, ответ HttpServletResponse) выдает ServletException, IOException { doGet(request,response); }}//Db как класс базы данных Db {частная статическая карта <String,Book> map=new LinkedHashMap() static {map.put("1", new); Book("1","Java WEB Development","WY","Good Book")); map.put("2", new Book("2","WEB Development","zt","General" )); map.put("3", новая книга("3","Программирование","df","Лучшая книга")); Book("4","Компоненты компьютера","as","В целом хорошие книги")); map.put("5", new Book("5","Принципы составления","ty","Очень хорошо book")); map.put("6", new Book("6","Обслуживание сети","hj","очень хорошая книга")); } public static Map getAll() { return map; }} // класс книги Book {частный идентификатор строки; имя частной строки; частное описание строки; public Book() { super(); // Автоматически созданная заглушка конструктора TODO } public Book(Идентификатор строки, имя строки, автор строки, описание строки) { super(); идентификатор; this.name = имя; this.author = автор; this.description = описание; } public String getId () { return id; } public void setId (String id) { this.id = id } public String; getName () {возвращаемое имя; } public void setName(String name) { this.name = name; getDescription () {возвращение описания; } public void setDescription (описание строки) { this.description = описание }} package cn.com.shopping; импорт; java.io.IOException;импорт java.io.PrintWriter;импорт java.util.List;импорт javax.servlet.ServletException;импорт javax.servlet.http.HttpServlet;импорт javax.servlet.http.HttpServletRequest;импорт javax.servlet. http.HttpServletResponse;импорт javax.servlet.http.HttpSession; открытый класс SessionCountDemo расширяет HttpServlet {private static Final long SerialVersionUID = 1L; response.setContentType("text/html;charset=UTF-8"); PrintWriter out=response.getWriter(); HttpSession session=request.getSession(); if(session==null) { out.write("У вас есть Не покупайте какой-либо товар! "); return; } out.write("Вы приобрели следующие продукты:"); List<Book> list=(List) session.getAttribute("list"); for(Book book:list) { out.write ( book.getName()); } } protected void doPost (запрос HttpServletRequest, ответ HttpServletResponse) выдает ServletException, IOException { doGet (запрос, ответ }}Я надеюсь, что эта статья будет полезна всем, кто занимается веб-программированием на Java.