課程
/后端開發(fā)
/Java
/JAVA遇見HTML——JSP篇
就是刪掉response.addCookie(cookie)就不會了,不過不循環(huán)了
2020-10-24
源自:JAVA遇見HTML——JSP篇 8-8
正在回答
這是index.jsp的 <%@?page?import="java.util.ArrayList"?%> <%@?page?import="list.entity.Items"?%> <%@?page?import="list.dao.ItemsDAO"?%><%-- ??Created?by?IntelliJ?IDEA. ??User:?zz ??Date:?2020/10/21 ??Time:?10:50 ??To?change?this?template?use?File?|?Settings?|?File?Templates. --%> <%@?page?contentType="text/html;charset=UTF-8"?language="java"?%> <html> <head> ????<title>商品展示</title> ????<style?type="text/css"> ????????div{ ????????????float:left; ????????????margin:10px; ????????} ????????div?dd{ ????????????margin:0px; ????????????font-siez:10pt; ????????} ????????div?dd.dd_name{ ????????????color:blue; ????????} ????????div?dd.dd_city{ ????????????color:?#000; ????????} ????</style> </head> <body> <h1>商品展示</h1> <hr> <center> ????<table?width="750"?height="60"?cellpadding="0"?cellspacing="0"?border="0"> ????????<tr> ????????????<td> ????????????????<!--商品循環(huán)開始--> ????????????????<% ????????????????????ItemsDAO?itemsDAO=new?ItemsDAO(); ????????????????????ArrayList<Items>list=itemsDAO.getAllItems(); ????????????????????if(list!=null&&list.size()>0){ ????????????????????for(int?i=0;i<list.size();i++){ ????????????????????Items?items=list.get(i); ????????????????%> ????????????????<div> ????????????????????<dl> ????????????????????????<dt> ????????????????????????????<a?href="details.jsp?id=<%=items.getId()%>"><img?src="images/<%=items.getPicture()%>"?width="120"?height="80"></a> ????????????????????????</dt> ????????????????????????<dd?class="dd_name"><%=items.getName()%></dd> ????????????????????????<dd?class="dd_city">產(chǎn)地:<%=items.getCity()%> 價格:¥<%=items.getPrice()%></dd> ????????????????????</dl> ????????????????</div> ????????????????<!--商品循環(huán)結束--> ????????????????<% ????????????????????????} ????????????????????} ????????????????%> ????????????</td> ????????</tr> ????</table> </center> </body> </html> 這是ItemsDAO的 package?list.dao; import?list.entity.Items; import?list.util.DBHelper; import?java.sql.Connection; import?java.sql.PreparedStatement; import?java.sql.ResultSet; import?java.util.ArrayList; //商品的業(yè)務邏輯類 public?class?ItemsDAO?{ ????//獲得所有的商品信息 ????public?ArrayList<Items>?getAllItems(){ ????????Connection?conn=null; ????????PreparedStatement?stmt=null; ????????ResultSet?rs=null; ????????ArrayList<Items>?list=new?ArrayList<Items>(); ????????try{ ????????????conn=?DBHelper.getConnection(); ????????????String?sql="SELECT?*?from?items"; ????????????stmt=conn.prepareStatement(sql); ????????????rs=stmt.executeQuery(); ????????????while?(rs.next()){ ????????????????Items?item=new?Items(); ????????????????item.setId(rs.getInt("id")); ????????????????item.setName(rs.getString("name")); ????????????????item.setCity(rs.getString("city")); ????????????????item.setNumber(rs.getInt("number")); ????????????????item.setPrice(rs.getInt("price")); ????????????????item.setPicture(rs.getString("picture")); ????????????????list.add(item);//把一個對象加入集合 ????????????} ????????????return?list; ????????}catch?(Exception?e){ ????????????e.printStackTrace(); ????????????return?null; ????????}finally?{ ????????????//釋放數(shù)據(jù)集對象 ????????????if(rs!=null){ ????????????????try{ ????????????????????rs.close(); ????????????????????rs=null; ????????????????}catch?(Exception?e){ ????????????????????e.printStackTrace(); ????????????????} ????????????} ????????????//釋放語句對象 ????????????if(stmt!=null){ ????????????????try{ ????????????????????stmt.close(); ????????????????????stmt=null; ????????????????}catch?(Exception?e){ ????????????????????e.printStackTrace(); ????????????????} ????????????} ????????} ????} ????????//根據(jù)商品編號獲得商品資料 ????public?Items?getItemsById(int?id){ ????????Connection?conn=null; ????????PreparedStatement?stmt=null; ????????ResultSet?rs=null; ????????try{ ????????????conn=?DBHelper.getConnection(); ????????????String?sql="SELECT?*?from?items?where?id=?"; ????????????stmt=conn.prepareStatement(sql); ????????????stmt.setInt(1,id); ????????????rs=stmt.executeQuery(); ????????????if?(rs.next()){ ????????????????Items?item=new?Items(); ????????????????item.setId(rs.getInt("id")); ????????????????item.setName(rs.getString("name")); ????????????????item.setCity(rs.getString("city")); ????????????????item.setNumber(rs.getInt("number")); ????????????????item.setPrice(rs.getInt("price")); ????????????????item.setPicture(rs.getString("picture")); ????????????????return??item; ????????????}else{ ????????????????return?null; ????????????} ????????}catch?(Exception?e){ ????????????e.printStackTrace(); ????????????return?null; ????????}finally?{ ????????????//釋放數(shù)據(jù)集對象 ????????????if(rs!=null)?{ ????????????????try?{ ????????????????????rs.close(); ????????????????????rs?=?null; ????????????????}?catch?(Exception?e)?{ ????????????????????e.printStackTrace(); ????????????????} ????????????} ????????????//釋放語句對象 ????????????if?(stmt?!=?null)?{ ????????????????try?{ ????????????????????stmt.close(); ????????????????????stmt?=?null; ????????????????}?catch?(Exception?e)?{ ????????????????????e.printStackTrace(); ????????????????} ????????????} ????????} ????} ????//獲取最近瀏覽的簽5條商品信息 ????public?ArrayList<Items>?getViewList(String?list){ ????????ArrayList<Items>?itemlist=new?ArrayList<Items>(); ????????int?iCount=5;//每次返回前5條記錄 ????????if(list!=null&&list.length()>0)?{ ????????????String[]?arr?=?list.split(","); ????????????//如果商品記錄大于等于5條 ????????????if?(arr.length?>=?5)?{ ????????????????for(int?i=arr.length-1;i>=arr.length-iCount;i--){ ????????????????????itemlist.add(getItemsById(Integer.parseInt(arr[i]))); ????????????????} ????????????}else{ ????????????????for(int?i=arr.length-1;i>=0;i--){ ????????????????????itemlist.add(getItemsById(Integer.parseInt(arr[i]))); ????????????????} ????????????} ????????????????return?itemlist; ????????????}?else?{ ????????????????return?null; ????????????} ????????} ????} ????這是detals.jsp的 ????<%@?page?import="list.dao.ItemsDAO"?%> <%@?page?import="list.entity.Items"?%> <%@?page?import="java.util.ArrayList"?%><%-- ??Created?by?IntelliJ?IDEA. ??User:?zz ??Date:?2020/10/21 ??Time:?10:01 ??To?change?this?template?use?File?|?Settings?|?File?Templates. --%> <%@?page?contentType="text/html;charset=UTF-8"?language="java"?%> <html> <head> ????<title>商品詳情</title> ????<style?type="text/css"> ????????div{ ????????????float:left; ????????????margin-left:30px; ????????????margin-right:30px; ????????????margin-top:5px; ????????????margin-bottom:5px; ????????} ????????div?dd{ ????????????margin:0px; ????????????font-size:10pt; ????????} ????????div?dd.dd_name{ ????????????color:blue; ????????} ????????div?dd.dd_city{ ????????????color:#000; ????????} ????</style> </head> <body> <h1>商品詳情</h1> <hr> <center> ????<table?width="750"?height="60"?cellpadding="0"?cellspacing="0"border="0"> ????????<tr> ????????????<!--商品詳情--> ????????????<% ????????????????Items?items=new?Items(); ????????????????ItemsDAO?itemsDAO=new?ItemsDAO(); ????????????????items=itemsDAO.getItemsById(Integer.parseInt(request.getParameter("id"))); ????????????????if(items!=null){ ????????????%> ????????????<td?width="70%"?valign="top"> ????????????????<table> ????????????????????<tr> ????????????????????????<td?rowspan="4"><img?src="images/<%=items.getPicture()%>"?width="200"?height="160"/>?</td> ????????????????????</tr> ????????????????????<tr> ????????????????????????<td><B><%=items.getName()%></B></td> ????????????????????</tr> ????????????????????<tr> ????????????????????????<td>產(chǎn)地:<%=items.getCity()%></td> ????????????????????</tr> ????????????????????<tr> ????????????????????????<td>價格:<%=items.getPrice()%>¥</td> ????????????????????</tr> ????????????????</table> ????????????</td> ????????????<% ????????????????} ????????????%> ????????????<% ????????????????String?list=""; ????????????????//從客戶端獲得Cookies集合 ????????????????Cookie[]?cookies=request.getCookies(); ????????????????//遍歷這個Cookies集合 ????????????????if(cookies!=null&&cookies.length>0)?{ ????????????????????for?(Cookie?c?:?cookies)?{ ????????????????????????if?(c.getName().equals("ListViewCookie"))?{ ????????????????????????????list?=?c.getValue(); ????????????????????????} ????????????????????} ????????????????} ????????????????list+=request.getParameter("id")+","; ????????????????//如果瀏覽記錄超過1000條,清零 ????????????????String?[]?arr=list.split(","); ????????????????if(arr!=null&&arr.length>0){ ????????????????????if(arr.length>=1000){ ????????????????????????list=""; ????????????????????} ????????????????} ????????????????Cookie?cookie=new?Cookie("ListViewCookie",list); ????????????????response.addCookie(cookie); ????????????%> ????????????<!--瀏覽過的商品--> ????????????<td?width="308"?bgcolor="#EEE"?align="center"> ????????????????<br> ????????????????<b>您瀏覽過的商品</b><br/> ????????????????<!--循環(huán)開始--> ????????????????<% ????????????????????ArrayList<Items>?itemlist=itemsDAO.getViewList(list); ????????????????????if(itemlist!=null&&itemlist.size()>0){ ????????????????????????for(Items?i:itemlist){ ????????????????%> ????????????????<div> ????????????????????<dl> ????????????????????????<dt> ????????????????????????????<a?href="details.jsp?id=<%=i.getId()%>"><img?src="images/<%=i.getPicture()%>"?width="120"?height="120"></a> ????????????????????????</dt> ????????????????????????<dd?class="dd_name"><%=i.getName()%></dd> ????????????????????????<dd?class="dd_city">產(chǎn)地:<%=i.getCity()%> 價格:<%=i.getPrice()%>¥</dd> ????????????????????</dl> ????????????????</div> ????????????????<% ????????????????????????} ????????????????????} ????????????????%> ????????????????<!--循環(huán)結束--> ????????????</td> ????????</tr> ????</table> </center> </body> </html>
舉報
Java Web入門級教程JSP,帶你輕松的學習JSP基礎知識
4 回答這是什么情況
1 回答這是什么情況?
3 回答看看我這是什么情況
4 回答什么情況下用轉發(fā)?什么情況下用重定向?
1 回答自己試了一下,但是「請求重定向」卻保存了對象,這是什么情況?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關注慕課網(wǎng)微信公眾號
2020-10-24