欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JAVAEE中用Session簡(jiǎn)單實(shí)現(xiàn)購(gòu)物車(chē)功能示例代碼

 更新時(shí)間:2017年03月01日 14:15:40   作者:張行之  
本篇文章主要介紹了JAVAEE中用Session簡(jiǎn)單實(shí)現(xiàn)購(gòu)物車(chē)功能示例代碼,非常具有實(shí)用價(jià)值,需要的朋友可以參考下。

Session簡(jiǎn)單實(shí)現(xiàn)購(gòu)物車(chē)功能

這個(gè)小程序主要就3個(gè)頁(yè)面,一個(gè)商品列表頁(yè)面(HomeServlet),一個(gè)是提示加入購(gòu)物車(chē)頁(yè)面(AddCartTipServlet),一個(gè)是顯示購(gòu)物車(chē)清單頁(yè)面(ShowCartServlet)。

HomeServlet頁(yè)面:

@WebServlet({ "/HomeServlet", "/home" })
public class HomeServlet extends HttpServlet {
  private static final long serialVersionUID = 1L;

  public HomeServlet() {
    super();
  }

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

    request.setCharacterEncoding("utf-8");
    response.setContentType("text/html;charset=utf-8");
    PrintWriter out = response.getWriter();
    out.print("<h2>書(shū)單</h2><hr/><br/>");
    out.print("人類(lèi)簡(jiǎn)史<a href='"+request.getContextPath()+"/addCartTip?id=1'>加入購(gòu)物車(chē)</a><br/>");
    out.print("未來(lái)簡(jiǎn)史<a href='"+request.getContextPath()+"/addCartTip?id=2'>加入購(gòu)物車(chē)</a><br/>");
    out.print("世界簡(jiǎn)史<a href='"+request.getContextPath()+"/addCartTip?id=3'>加入購(gòu)物車(chē)</a><br/>");
    out.print("時(shí)間簡(jiǎn)史<a href='"+request.getContextPath()+"/addCartTip?id=4'>加入購(gòu)物車(chē)</a><br/>");
    out.print("<a href='"+request.getContextPath()+"/show/cart'>查看購(gòu)物車(chē)</a><br/>");
  }

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

}

AddCartTipServlet頁(yè)面:

@WebServlet({ "/AddCartTipsServlet", "/addCartTip" })
public class AddCartTipsServlet extends HttpServlet {
  private static final long serialVersionUID = 1L;


  public AddCartTipsServlet() {
    super();
  }

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

    request.setCharacterEncoding("utf-8");
    response.setContentType("text/html;charset=utf-8");

    HttpSession session = request.getSession();
    List<String> list = (List<String>) session.getAttribute("cart");
    if(list==null){
      list=new ArrayList<>();
    }

    String id = request.getParameter("id");
    list.add(id);
    session.setAttribute("cart", list);

    System.out.println(list.toString());
    response.getWriter().println("已加入購(gòu)物車(chē)<br/>"
        + "<a href='"+request.getContextPath()+"/home'>繼續(xù)購(gòu)物</a><br/>"
        + "<a href='"+request.getContextPath()+"/show/cart'>查看購(gòu)物車(chē)</a><br/>");
  }

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

}

ShowCartSevlet頁(yè)面

@WebServlet({ "/ShowCartServlet", "/show/cart" })
public class ShowCartServlet extends HttpServlet {
  private static final long serialVersionUID = 1L;

  public ShowCartServlet() {
    super();
  }


  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    request.setCharacterEncoding("utf-8");
    response.setContentType("text/html;charset=utf-8");
    PrintWriter out = response.getWriter();
    List<String> list = (List<String>)request.getSession().getAttribute("cart");
    if(list!=null){   
      out.print("你的購(gòu)物清單:<br/>");
      for (String string : list) {
        out.println(DBUtils.findById(string)+"<br/>");
      }
      out.println("<br/><a href='"+request.getContextPath()+"/home'>繼續(xù)購(gòu)物</a><br/>");
    }else{
      out.println("你還沒(méi)有將商品添加到購(gòu)物車(chē)<br/>"
          + "<a href='"+request.getContextPath()+"/home'>返回商品列表</a><br/>");
    }
  }

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

}

DBUtils:存儲(chǔ)著商品信息

public class DBUtils {
  private static Map<String,String> map = new HashMap<>();

  static{
    map.put("1", "人類(lèi)簡(jiǎn)史");
    map.put("2", "未來(lái)簡(jiǎn)史");
    map.put("3", "世界簡(jiǎn)史");
    map.put("4", "時(shí)間簡(jiǎn)史");
  }

  public static String findById(String id){
    return map.get(id);
  }

}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java數(shù)據(jù)類(lèi)型Integer與int的區(qū)別詳細(xì)解析

    Java數(shù)據(jù)類(lèi)型Integer與int的區(qū)別詳細(xì)解析

    這篇文章主要介紹了Java數(shù)據(jù)類(lèi)型Integer與int的區(qū)別詳細(xì)解析,Ingeter是int的包裝類(lèi),int的初值為0,Ingeter的初值為null,int和integer(無(wú)論new否)比,都為true,因?yàn)闀?huì)把Integer自動(dòng)拆箱為int再去比,需要的朋友可以參考下
    2023-12-12
  • Java標(biāo)識(shí)接口的使用方法

    Java標(biāo)識(shí)接口的使用方法

    在本篇文章中小編給大家分享了關(guān)于Java標(biāo)識(shí)接口的使用方法和教程內(nèi)容,有需要的朋友們學(xué)習(xí)下。
    2019-01-01
  • Ubuntu 15下安裝JDK1.8教程

    Ubuntu 15下安裝JDK1.8教程

    這篇文章主要為大家詳細(xì)介紹了Ubuntu 15下JDK1.8安裝教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • Java?時(shí)間相減算法題解示例

    Java?時(shí)間相減算法題解示例

    這篇文章主要為大家介紹了Java?時(shí)間相減算法題解示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • SpringBoot中@Autowired生效方式詳解

    SpringBoot中@Autowired生效方式詳解

    @Autowired注解可以用在類(lèi)屬性,構(gòu)造函數(shù),setter方法和函數(shù)參數(shù)上,該注解可以準(zhǔn)確地控制bean在何處如何自動(dòng)裝配的過(guò)程。在默認(rèn)情況下,該注解是類(lèi)型驅(qū)動(dòng)的注入
    2022-06-06
  • 加速spring/springboot應(yīng)用啟動(dòng)速度詳解

    加速spring/springboot應(yīng)用啟動(dòng)速度詳解

    這篇文章主要介紹了加速spring/springboot應(yīng)用啟動(dòng)速度詳解,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì)對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • 一篇文章帶你深入了解Java基礎(chǔ)

    一篇文章帶你深入了解Java基礎(chǔ)

    這篇文章主要給大家介紹了關(guān)于Java中方法使用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-08-08
  • Java自定義equals產(chǎn)生的問(wèn)題分析

    Java自定義equals產(chǎn)生的問(wèn)題分析

    這篇文章主要介紹了Java自定義equals時(shí)super.equals帶來(lái)的問(wèn)題分析,總的來(lái)說(shuō)這并不是一道難題,那為什么要拿出這道題介紹?拿出這道題真正想要傳達(dá)的是解題的思路,以及不斷優(yōu)化探尋最優(yōu)解的過(guò)程。希望通過(guò)這道題能給你帶來(lái)一種解題優(yōu)化的思路
    2023-01-01
  • Java采用setAsciiStream方法檢索數(shù)據(jù)庫(kù)指定內(nèi)容實(shí)例解析

    Java采用setAsciiStream方法檢索數(shù)據(jù)庫(kù)指定內(nèi)容實(shí)例解析

    這篇文章主要介紹了Java采用setAsciiStream方法檢索數(shù)據(jù)庫(kù)指定內(nèi)容,是比較實(shí)用的功能,需要的朋友可以參考下
    2014-08-08
  • Spring Security學(xué)習(xí)筆記(一)

    Spring Security學(xué)習(xí)筆記(一)

    這篇文章主要介紹了Spring Security的相關(guān)資料,幫助大家開(kāi)始學(xué)習(xí)Spring Security框架,感興趣的朋友可以了解下
    2020-09-09

最新評(píng)論