result
code
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49package cn.itcast.session; import cn.itcast.history.Book; import cn.itcast.history.bookMap; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.*; import java.io.IOException; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Set; @WebServlet("/session03") public class session03 extends HttpServlet { @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setHeader("content-type", "text/html;charset=UTF-8"); resp.getWriter().write("网页上所有的书籍:" + "<br/>"); LinkedHashMap<String, Book> linkedHashMap = bookMap.getAll(); Set<Map.Entry<String, Book>> entry = linkedHashMap.entrySet(); for (Map.Entry<String, Book> stringBookEntry : entry) { Book book = stringBookEntry.getValue(); resp.getWriter().write("<a href='/demo1/session04?id=" + book.getId() + "' target=_blank>" + book.getName() + "</a>"); resp.getWriter().write("<br/>"); } resp.getWriter().write("你购买的书籍:"); resp.getWriter().write("<br/>"); HttpSession httpsession=req.getSession(); List<Book> list=(List)httpsession.getAttribute("list"); if(list==null||list.size()==0){ resp.getWriter().write("你还没有买任何一本书籍"); } else{ for(Book book:list){ resp.getWriter().write(book.getName()); resp.getWriter().write("<br/>"); } } } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doPost(req,resp); } }
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38package cn.itcast.session; import cn.itcast.history.Book; import cn.itcast.history.bookMap; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; import java.util.ArrayList; import java.util.List; @WebServlet("/session04") public class session04 extends HttpServlet { @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String id=req.getParameter("id"); Book book= (Book)bookMap.getAll().get(id); HttpSession httpSession=req.getSession(); List list=(List)httpSession.getAttribute("list"); if(list==null){ list=new ArrayList(); httpSession.setAttribute("list",list); } list.add(book); String url="/demo1/session03"; resp.sendRedirect(url); } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doPost(req,resp); } }
simmarize
session可以存放对象,而之前的cookie只能存放字符串,这次就在session域中存了一个叫list的List对象,由于session在第一次访问servlet或jsp等动态资源时就会自动创建在内存中,所以不用手动创建session对象,只要从resquest域中取出来就好了。另外cookie是基于浏览器的,而session是基于自己服务器的。
最后
以上就是虚心香烟最近收集整理的关于java学习:用Session实现购买书籍的记录(部分代码在之前博客有写)resultcodesimmarize的全部内容,更多相关java学习:用Session实现购买书籍内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复