當前位置:首頁 » 網購平台 » jspweb購物車
擴展閱讀
寧波奧德賽優惠價格 2021-03-15 14:26:02
丹尼斯購物卡能掛失么 2021-03-15 14:25:58
淘寶購物指紋驗證失敗 2021-03-15 14:24:44

jspweb購物車

發布時間: 2021-02-25 09:42:26

⑴ jsp購物車代碼

有人貼了轉發我一下

⑵ jsp+servlet怎樣實現網上購物車功能

利用cookie去寫應該可以

⑶ jsp實現購物車,請問用操作資料庫實現好,還是session做好

用資料庫存你得抄給資料庫造成多大的負擔啊, 而且對於購物車, 這種需要實時操作的東西, 資料庫的訪問量一大了, 就容易出現並發錯誤, 或者直接崩潰.

不可否認用Session確實效率很高, 而且會話是針對各個連接的, 所以便於管理, 但是用Session也不是完美的, 因為Session是有有效期的, 根據伺服器的設置不同而不一樣長, 如果你在購物的過程中Session超時了, 那麼購物車中的東西就會全沒了.

不知道你看過當當網的購物車沒有, 當你下線之後, 再次上線, 購物車中的東西還是存在的, 這對於用戶來說非常方便.

所以如果你的伺服器夠強的話, 你完全可以用一個靜態變數來保存所有用戶的購物車, 比如用一個靜態的Map, 以IP作為Key,區分不同用戶的購物車, 這樣就可以使用戶在下線的情況下也可以保存購物車中的內容.

這種方法實現過, 只是沒有用大量的並發訪問測試其穩定性, 但是一定是可行的.

⑷ jsp如何計算購物車總價

<%
Map<Goods,Integer> map=(Map)session.getAttribute("map");
/*if(map==null){
out.println("購物車為空");
return ;
}*/
Set<Goods> key=map.keySet();
// 計算總金額 sums
double sums=0;

for(Goods g:key){
sums=sums+g.getGPRICE()*map.get(g);
}
session.setAttribute("sums",sums);
%>
最後一專行
<span><%=sums %>元屬</span>

⑸ 急求一個用jsp做的購物網站,可以連接到資料庫,實現注冊,購物車等功能

登錄注冊:
<%@ page language="java" import="java.util.*" pageEncoding="GB2312"%>

<html>
<body>
<%
request.setCharacterEncoding("GB2312");
String username=request.getParameter("username");
String password=request.getParameter("password");
String sql="select * from user where username=? and password=?";
pstm=conn.prepareStatement(sql);
pstm.setString(1,username);
pstm.setString(2,password);
rs=pstm.executeQuery();
if(rs.next())
{
session.setAttribute("id",rs.getInt("userid"));
int id=rs.getInt("userid");
session.setAttribute("username",rs.getString("username"));
session.setAttribute("realname",rs.getString("realname"));
session.setAttribute("address",rs.getString("address"));
session.setAttribute("phone",rs.getString("phone"));
}
Integer userid=(Integer)session.getAttribute("id");
// System.out.println(userid);
if(userid==null)
{
%>
<table border=1>
<form action="" method="post">
<tr><td>用戶名:</td><td><input type="text" name="username"></td></tr>
<tr><td>密 碼:</td><td><input type="password" name="password"></td></tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="登錄" name="submit">
<a href="front/addUser.jsp">注冊</a></td>
</tr>
</form>
</table>
<% }
else
{%>
<table border=1>
<tr><td><%= session.getAttribute("username")%>歡迎光顧我的書店</td></tr>
<tr><td><a href="front/updateUser.jsp?userid=<%=userid %>">修改個人信息</a></td></tr>
<tr><td><a href="front/SelectShoppingCart.jsp">查看購物車</a></td></tr>
<tr><td><a href="front/exit.jsp">退出</a></td></tr>
</table>
<%}
%>
</body>
</html>

購物車部分代碼:
<%@ page language="java" import="java.util.*,com.javabean.*" pageEncoding="GB2312"%>

<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body><center>
<a href="front/index.jsp"><img src="images/logo.gif" alt="" title="" border="0" /></a>
<%@ include file="menu.jsp"%>
<%@ include file="/DB.jsp" %>

<%@ include file="leftmenu.jsp"%> <table>
<tr>
<td colspan="8" id=s align="center"><h1>您的購物車</h1></td><br>
</tr>
<tr>
<td align="center">id</td><td align="center">名稱</td><td align="center">作者</td>
<td align="center">出版社</td><td align="center">單價</td><td align="center">數量</td>
<td align="center">總價</td><td align="center">操作</td>
</tr>
<%
int totalNum=0;
double totalMoney=0.0;

ArrayList <ShoppingCartObject> cart=(ArrayList)session.getAttribute("shoppingcart");
Iterator it =null;
if(cart!=null && cart.size()>0){
it=cart.iterator();
while(it.hasNext()){
ShoppingCartObject sco=(ShoppingCartObject)it.next();
totalNum=totalNum+sco.getBooknum();
totalMoney=totalMoney+sco.getSubmoney();
%>

<tr>
<td align="center"><%=sco.getId() %></td>
<td align="center"><%=sco.getName() %></td>
<td align="center"><%=sco.getAuthor()%></td>
<td align="center"><%=sco.getPublisher() %></td>
<td align="center"><%=sco.getUnitprice() %></td>
<td align="center"><%=sco.getBooknum() %></td>
<td align="center">¥<%=sco.getSubmoney() %>元</td>
<td align="center"><a href="front/DelFromShoppingCart.jsp?id=<%=sco.getId()%>">刪除</a>
<a href="front/bookdetail.jsp?id=<%=sco.getId()%>">詳細信息</a></td>
</tr>
<%
}
}
else{ %>
<tr><td colspan="8" align="right">您一共買了<%= totalNum%>本書 總價為¥<%=totalMoney %>元</td></tr>
<tr><td colspan="8" align="center">您的購物車為空</td></tr><%} %>
<tr><td colspan="1" align="center"><a href="front/ClearShoppingCart.jsp">清空購物車</a></td>
<td colspan="4" align="center"><a href="front/allbook.jsp">繼續購物</a></td>
<td colspan="3" align="center"><a href="front/makeorder.jsp">前往結賬</a></td>
</tr>
</table>
</body>
</html>
</body>
</html>

⑹ 用JSP做個網站實現購物車功能

建個購物車對象
把購買好的 商品 放到 一個 集合里

再把 集合 存到 session中
然後 增刪改查 都 操作 session中的 集合
就OK了 不是很難 你試著 寫下 這樣 提高才會快

⑺ 如何用java和jsp做一個簡單的購物車

頁面jsp :

<%@pagelanguage="java"contentType="text/html;charset=utf-8"
pageEncoding="utf-8"%>
<%@taglibprefix="c"uri="
<%@tagliburi="

<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""
<htmlxmlns="
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
<title>易買網-首頁</title>
<linktype="text/css"rel="stylesheet"href="${pageContext.request.contextPath}/css/style.css"/>
<scripttype="text/javascript"src="${pageContext.request.contextPath}/js/jquery-2.1.1.js"></script>
<scripttype="text/javascript">
varcontextPath='${pageContext.request.contextPath}'
</script>
<scripttype="text/javascript"src="${pageContext.request.contextPath}/js/shopping.js"></script>
</head>
<body>
<jsp:includepage="top.jsp"/>
<divid="position"class="wrap">
您現在的位置:<ahref="Home">易買網</a>&gt;購物車
</div>
<divclass="wrap">
<divid="shopping">
<formaction=""method="post">
<table>
<tr>
<th>商品名稱</th>
<th>商品價格</th>
<th>購買數量</th>
<th>操作</th>
</tr>
<c:forEachitems="${sessionScope.shopCar}"var="item"varStatus="status">
<trid="proct_id_${item.proId}">
<tdclass="thumb"><imgsrc="${item.proImg}"height="50"width="30"/><ahref="Proct?action=view&entityId=${item.proId}">${item.proName}</a></td>
<tdclass="price"id="price_id_1">
<span><fmt:formatNumbervalue="${item.proPrice}"type="NUMBER"minFractionDigits="2"/></span>
<inputtype="hidden"value="${item.proPrice}"/>
</td>
<tdclass="number">
<dl>
<dt><spanonclick="sub('number_id_${item.proId}','${item.proId}')">-</span><inputid="number_id_${item.proId}"type="text"readonly="readonly"name="number"value="${item.proNum}"/><spanonclick="addNum('number_id_${item.proId}','${item.proId}')">+</span></dt>

</dl>
</td>
<tdclass="delete"><ahref="javascript:deleteItem('proct_id_${item.proId}','${item.proId}')">刪除</a></td>
</tr>
</c:forEach>
</table>
<divclass="button"><inputtype="submit"value=""/></div>
</form>
</div>
</div>
<divid="footer">
Copyright&;kaka292817678itjob遠標培訓.
</div>
</body>
</html>



頁面關聯的js 自己去網上下載一個jquery
/*數量減少*/
functionsub(id,proId){
//購買數量的值
varnum=$('#'+id).val();
if(num>1){
$('#'+id).val(num-1);
}

edit(id,proId);

}

functionedit(id,proId){
varurl=contextPath+'/HomeCarManager'
//修改後的數量,購物明細的商品的id
num=$('#'+id).val();
$.post(url,{"num":num,"proId":proId},function(msg){
/*
if(msg=='true'){
alert('修改成功');
}else{
alert('修改失敗');
}*/
});
}
/**
*數量增加
*@param{}id
*/
functionaddNum(id,proId){
//購買數量的值
varnum=$('#'+id).val();
$('#'+id).val(parseInt(num)+1);
edit(id,proId);
}

/**
*刪除購物明細
*/
functiondeleteItem(trId,proId){
//
//console.log($("#"+trId));
//js刪除頁面節點
//$("#"+trId).remove();
varurl=contextPath+'/HomeCarManager'
$.post(url,{"proId":proId},function(msg){
if(msg=='true'){
//js刪除頁面節點
$("#"+trId).remove();
}
});

}



後台servlet1
packagecom.kaka.web;

importjava.io.IOException;
importjava.io.PrintWriter;
importjava.util.ArrayList;
importjava.util.List;

importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
/**
*購物車處理類
*@author@authorITJob遠標培訓
*
*/

importcom.kaka.entity.Items;
importcom.kaka.entity.Proct;
importcom.kaka.service.ProctService;
importcom.kaka.service.impl.ProctServiceImpl;
{

=1L;
ProctServiceps=newProctServiceImpl();
@Override
protectedvoiddoPost(HttpServletRequestreq,HttpServletResponseresp)throwsServletException,IOException{
//獲取商品的id
StringproId=req.getParameter("proId");
resp.setContentType("text/html;charset=UTF-8");
PrintWriterwriter=resp.getWriter();
if(null!=proId&&!"".equals(proId)){
//返回添加購物車成功
//System.out.println("============="+proId);
//根據商品的id查詢商品
try{
IntegerpId=Integer.parseInt(proId);
Proctproct=ps.findProctById(pId);
if(null!=proct){
//查詢到了商品,將商品的相關參數構建一個購物明細放入到購物車
Itemsit=newItems();
it.setProId(proct.getProId());
it.setProName(proct.getProName());
it.setProPrice(proct.getProPrice());
it.setProImg(proct.getProImg());

//先判斷session范圍是否有購物車
List<Items>shopCar=(List<Items>)req.getSession().getAttribute("shopCar");
if(null==shopCar){
//購物車
shopCar=newArrayList<Items>();
}
//將商品加入到購物車之前,判斷購物車中是否已經包含了該購物明細,如果包含了,只需要修改購買的數量
if(shopCar.contains(it)){
intindex=shopCar.indexOf(it);//尋找購物車中包含購物明細在購物車中位置
Itemsitems=shopCar.get(index);//獲取購物車中存在的購物明細
items.setProNum(items.getProNum()+1);
}else{
shopCar.add(it);
}


//將購物車放入到session訪問
req.getSession().setAttribute("shopCar",shopCar);
//返回
writer.print(true);
}else{
writer.print(false);
}
}catch(Exceptione){
e.printStackTrace();
writer.print(false);
}
}else{
writer.print(false);
}
writer.flush();
writer.close();
}
@Override
protectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)throwsServletException,IOException{
doPost(req,resp);
}
}



後台管理servlet
packagecom.kaka.web;

importjava.io.IOException;
importjava.io.PrintWriter;
importjava.util.ArrayList;
importjava.util.List;

importjavax.mail.FetchProfile.Item;
importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
/**
*購物車修改
*@authorITJob遠標培訓
*
*/

importcom.kaka.entity.Items;
importcom.kaka.entity.Proct;
importcom.kaka.service.ProctService;
importcom.kaka.service.impl.ProctServiceImpl;
{

=1L;
ProctServiceps=newProctServiceImpl();
@Override
protectedvoiddoPost(HttpServletRequestreq,HttpServletResponseresp)throwsServletException,IOException{
resp.setContentType("text/html;charset=UTF-8");
PrintWriterwriter=resp.getWriter();
//獲取參數
StringproId=req.getParameter("proId");
Stringnum=req.getParameter("num");
if(null!=proId&&null!=num
&&!"".equals(proId)&&!"".equals(num)){
try{
IntegerpId=Integer.parseInt(proId);
FloatpNum=Float.parseFloat(num);

//根據商品的id獲取對應的明細項
//先判斷session范圍是否有購物車
List<Items>shopCar=(List<Items>)req.getSession().getAttribute("shopCar");
for(Itemsit:shopCar){
if(it.getProId()==pId){
it.setProNum(pNum);
}
}
writer.print(true);
}catch(Exceptione){
e.printStackTrace();
}
}else{
//刪除的操作
try{
IntegerpId=Integer.parseInt(proId);
//根據商品的id獲取對應的明細項
//先判斷session范圍是否有購物車
List<Items>shopCar=(List<Items>)req.getSession().getAttribute("shopCar");
Itemsitems=null;
for(Itemsit:shopCar){
if(it.getProId()==pId){
items=it;
break;
}
}
if(null!=items){
shopCar.remove(items);
req.getSession().setAttribute("shopCar",shopCar);
}

writer.print(true);
}catch(Exceptione){
e.printStackTrace();
}
}

writer.flush();
writer.close();
}
@Override
protectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)throwsServletException,IOException{
doPost(req,resp);
}
}

⑻ jsp+servlet做的購物網站怎麼綁定用戶和購物車(實現每個用戶有獨立的購物車)

當然是持久化到資料庫中了;
建一個購物車表,用戶ID作為外鍵約束,添加刪除內購物車的時候直接容操作資料庫就行了;
如果要實現用戶不登錄也有購物車的功能,就加一個cookie,把商品存在cookie里,瀏覽器不關閉就都在;

⑼ java web購物車

首先你應該對java有個基礎的了解,什麼是變數,什麼事關鍵字。我先給你每行都注釋下
//公共的類,類名為ShopingServlet 繼承父類HttpServlet
public class ShopingServlet extends HttpServlet {
實現父類方法doGet 意識就是通過get請求的就會進入這個方法,下面還有一個doPost方法就是通過post方式請求的會進入doPost,至於這兩個的區別:doGet安全性差,參數是在瀏覽器連接中直接顯示,然而doPost就是不會顯示的安全性要高,這也是最直觀的區別
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//通過request獲取session
HttpSession session=request.getSession();
//獲取參數為id的值
String id=request.getParameter("id");
//判斷id的值是否為null
if(id!=null)
{
//id不為空進入這裡面,在獲取參數為book的值,book的值為數組類型
Book[]book=(Book[])session.getAttribute("book");
在判斷book是否為null
if(book!=null)
{
//部位空進入,進行循環
for(int i=0;i<book.length;i++)
{
//判斷book數組中的第i個的BookId是否和之前的參數Id相同
if(book[i].getBookId().equals(id))
{
//相同,就把book數組中的第i個的id賦值為空
book[i].setid();

}
}
把當前book存入session中,變數名為book
session.setAttribute("book", book);
}

}
//跳轉到頁面/test4E/Shopping.jsp
response.sendRedirect("/test4E/Shopping.jsp");
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//調用上面的doGet方法
doGet(request,response);
}
}

下面的代碼和這個是重復的,不知道為什麼你要發布兩遍,你可以對比一下

⑽ jsp購物車原理是怎樣啊

現在做購物車抄一般都是用的session,
所以你說的原理應該是
做購物車的時候把購物信息都放在session裡面,然後因為session的生命周期在瀏覽器打開到關閉的過程之間。
就是說你關閉了瀏覽器之後,再打開瀏覽器session就清空了。你瀏覽器沒有關閉session就一直存在,所以你的購物信息在瀏覽器不關閉的時候就會存放在裡面。就是購物車了。
差不多就是這樣了。