亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

jsp實現購物程序

2020-07-27 21:52:22
字體:
來源:轉載
供稿:網友
下面是我用JSP和數據庫做的購物車的源程序:

注意:
1、重新計費部分還沒有做好,大家自己動手吧!
2、下一版本將用session做。

//shop_cart.jsp

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page session="true" %>
<%@ page language="java" import="java.sql.*" %>
<jsp:useBean id="bka" scope="page" class="shop.bka" />
<%

String product_type;
String action;
int product_id;
int curpage;

//商品類型
if (request.getParameter("product_type")==null){
product_type="all";
}else{
product_type=request.getParameter("product_type");
}

//頁數和商品類型參數,可以在“繼續購物”時返回到上次購物的頁面
if (request.getParameter("curpage")==null){
curpage=1;
}else{
curpage=java.lang.Integer.parseInt(request.getParameter("curpage"));
}

//動作
if (request.getParameter("action")==null){
action="view";
}else{
action=request.getParameter("action");
}

//商品編號
if (request.getParameter("product_id")==null){
product_id=0;
}else{
product_id=java.lang.Integer.parseInt(request.getParameter("product_id"));
}

int bbb;
bbb=1;

Integer num = new Integer(bbb);

//商店編號
session.putValue("shop_id",num);
//顧客username
session.putValue("guest_name","asp2001");

String guest_name=(String)session.getValue("guest_name");
Integer shop_id=(Integer)session.getValue("shop_id");


java.lang.String sql;
java.sql.ResultSet rs;


if (action.compareTo("add")==0) {

sql="select cart_quantity from shop_cart where cart_shop_id=" + shop_id

+ " and cart_guest_id='" + guest_name + "' and cart_product_id=" + product_id ;
rs = bka.executeQuery(sql);
if (rs.next()){
int cart_quantity;
cart_quantity=java.lang.Integer.parseInt(rs.getString("cart_quantity"))+1;
sql="update shop_cart set cart_quantity=" + cart_quantity + " where cart_shop_id="  

+ shop_id + " and cart_guest_id='" + guest_name + "' and cart_product_id=" + product_id ;
rs = bka.executeQuery(sql);}
else
{
sql="insert into shop_cart (cart_shop_id,cart_guest_id,cart_product_id,cart_quantity) values ('" + shop_id + "','"  

+ guest_name + "','" + product_id + "',1)";
rs = bka.executeQuery(sql);
}
}

if (action.compareTo("clear")==0) {
sql="delete from shop_cart where cart_shop_id=" + shop_id + " and cart_guest_id='" + guest_name + "'";
rs = bka.executeQuery(sql);
}

if (action.compareTo("delete")==0) {
sql="delete from shop_cart where cart_shop_id=" + shop_id + " and cart_guest_id='"

+ guest_name + "' and cart_product_id=" + product_id ;
rs = bka.executeQuery(sql);
}
%>
<div align="center"><center>

<table border="0" cellpadding="0" cellspacing="0" width="610"

height="2">
<tr>
<td><form method="POST"

action="shop_cart.jsp?action=update&product_type=<%=product_type%>&curp

age=<%=curpage%>">
<table border="0" cellpadding="0" cellspacing="0" width="610"

height="2">
<tr>
<td width="122" height="7"><div align="center"><center><table

border="1" cellpadding="2" cellspacing="0" width="100%" bordercolorlight="#FFB468"

bordercolordark="#FFFFFF" bgcolor="#FFB468">
<tr>
<td width="100%"><div

align="center"><center><p>購物車</td>
</tr>
</table>
</center></div></td>
<td width="122" height="7" style="border: medium"

align="center"><div align="center"><center><table
border="1" cellpadding="2" cellspacing="0" width="100%"

bordercolorlight="#FFB468"
bordercolordark="#FFFFFF" bgcolor="#FFB468">
<tr>
<td width="100%"><div align="center"><center><p><a

href="shop_list.jsp?shop_id=<%=shop_id%>&product_type=<%=product_type%>

&curpage=<%=curpage%>">繼續購物</a></td>
</tr>
</table>
</center></div></td>
<td width="122" height="7" style="border: medium"

align="center"><div align="center"><center><table
border="1" cellpadding="2" cellspacing="0" width="100%"

bordercolorlight="#FFB468"
bordercolordark="#FFFFFF" bgcolor="#FFB468">
<tr>
<td width="100%"><div align="center"><center><p><a

href="javascript: document.forms[0].submit()">重新計費</a></td>
</tr>
</table>
</center></div></td>
<td width="122" height="7" style="border: medium"

align="center"><div align="center"><center><table
border="1" cellpadding="2" cellspacing="0" width="100%"

bordercolorlight="#FFB468"
bordercolordark="#FFFFFF" bgcolor="#FFB468">
<tr>
<td width="100%"><div align="center"><center><p>

<a href="shop_cart.jsp?action=clear&product_type=<%=product_type%>&curpage=<%=curpage%>">清空購物車</a></td>
</tr>
</table>
</center></div></td>
<td width="122" height="7" style="border: medium" align="center"><div align="center"><center><table
border="1" cellpadding="2" cellspacing="0" width="100%" bordercolorlight="#FFB468"
bordercolordark="#FFFFFF" bgcolor="#FFB468">
<tr>
<td width="100%"><div align="center"><center><p><a href="shop_order.asp">確認購買</a></td>
</tr>
</table>
</center></div></td>
</tr>
<tr align="center">
<td width="610" height="1" colspan="5"><div align="center"><center>
<table border="1" cellpadding="2" cellspacing="0" width="100%" bgcolor="#FDFEE2"  

bordercolorlight="#FFB468" bordercolordark="#FFFFFF" height="40">
<tr>
<td width="20%" height="8" align="left">商品名稱</td>
<td width="10%" height="8" align="left">市場價</td>
<td width="10%" height="8" align="left">優惠價</td>
<td width="10%" height="8" align="left">數量</td>
<td width="14%" height="8" align="left">小計</td>
<td width="12%" height="8" align="left">定金比例</td>
<td width="17%" height="8" align="left">定金小計</td>
<td width="17%" height="8" align="left">刪除</td>
</tr>
<%
sql="select shop_product.product_id,shop_product.product_name,shop_product.product_price,

shop_product.product_discount,shop_cart.cart_quantity,shop_product.product_first from shop_cart,shop_product where shop_cart.cart_shop_id=" + shop_id + " and shop_cart.cart_guest_id='" + guest_name + "' and shop_cart.cart_product_id=shop_product.product_id";
rs = bka.executeQuery(sql);
int total;
int total_first;
total=0;
total_first=0;
String product_name;
int product_price;
int product_discount;
int product_first;
int cart_quantity;

if (rs.next()){
while (rs.next()) {
product_id=java.lang.Integer.parseInt(rs.getString(1));
product_name=rs.getString(2);
product_price=java.lang.Integer.parseInt(rs.getString(3));
product_discount=java.lang.Integer.parseInt(rs.getString(4));
cart_quantity=java.lang.Integer.parseInt(rs.getString(5));
product_first=java.lang.Integer.parseInt(rs.getString(6));
%>

<tr>
<td width="10%" height="1" align="left"><%=product_name%></td>
<td width="10%" height="1" align="left"><%=product_price%></td>
<td width="10%" height="1" align="left"><%=product_discount%></td>
<td width="10%" height="1" align="left"><input type="text" name="<%= "t" + product_id %>" size="3" value="<%=cart_quantity%>"></td>
<td width="14%" height="1" align="left"><%=product_discount*cart_quantity%></td>
<td width="12%" height="1" align="left"><%=product_first + "%"%></td>
<td width="17%" height="1" align="left"><%=product_first*product_discount*cart_quantity/100.0%></td>
<td width="17%" height="1"><div align="center"><center><p><a href="shop_cart.jsp?action=delete&product_id=<%=product_id%>">delete</a></td>
</tr>

<%
total=total+product_discount*cart_quantity;
total_first=total_first+product_discount*cart_quantity*product_first/100;
}
%>

<tr align="center">
<td width="72%" colspan="6" height="16"><div align="right"><p>總計</td>
<td width="36%" colspan="2" height="16"><div align="left"><%=total%></td>
</tr>
<tr align="center">
<td width="72%" colspan="6" height="16"><div align="right"><p>定金總計</td>
<td width="36%" colspan="2" height="16"><div align="left"><%=total_first%></td>
</tr>
<tr align="center">
<td width="72%" colspan="6" height="16"><div align="right"><p>結余</td>
<td width="36%" colspan="2" height="16"><div align="left"><%=total-total_first%></td>
</tr>
</table>
</center></div>

<%
}else{
%>
<p align="center">購物車為空!</p>
<%
}
%>


數據庫操作部分

程序用到兩個表:
1 shop_cart表
cart_id int 購物車編號 自動編號
cart_shop_id nvarchar 商店編號
cart_product_id nvarchar 商品編號
cart_quantity int 商品數量
臨時存放購物車數據

2 shop_product表
product_id int 商品編號 自動編號
shop_id nvarchar 商店編號
product_name nvarchar 商品名稱
product_bb nvarchar 商品介紹
product_price int 市場價
product_discount int 優惠價
product_img img 圖片
product_status nvarchar 狀態
product_first int 定金比例
product_type nvanchar 商品類型
存放商品資料

使用bka.java制成的javabean:bka.class可以提供對數據庫的操作。

另外,需在控制面板的系統DSN中注冊bka.dsn,
從而可使JSP通過JDBC-ODBC來調用sql數據庫。
在頁面中調用javabean,基本上可采用以下方式:


<%@ page language="java" import="java.sql.*" %>
<jsp:useBean id="RegisterBean" scope="page" class="shop.bka" />
<%
String sql="select * from xxx";
ResultSet rs = RegisterBean.executeQuery(sql);
if(rs.next()) {
rs.close();
RegisterBean.closeStmt();
session.putValue("register_message","duplicate name found!");
}
%>
注意應在使用后將rs關閉。


以下是bka.java的源程序。注意在使用前需用javac加以編譯成為class文件即javabean.

--shop/bka.java--


package shop;
import java.sql.*;

public class bka {
String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr = "jdbc:odbc:bka";
Connection conn = null;
ResultSet rs = null;

public bka() {
try {
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException e) {
System.err.println("bka(): " + e.getMessage());
}
}

public ResultSet executeQuery(String sql) {
rs = null;
try {
conn = DriverManager.getConnection(sConnStr,"xxx","yyy");
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(SQLException ex) {
System.err.println("aq.executeQuery: " + ex.getMessage());
}
return rs;
}
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品嫩草影院久久| 日韩av快播网址| 国产精品稀缺呦系列在线| 亚洲成在人线av| 亚洲精品成人久久| 国产成人在线播放| 国产精品成人免费视频| 欧美理论电影网| 国产成人精品国内自产拍免费看| 97超碰国产精品女人人人爽| 亚洲第一男人av| 亚洲影视中文字幕| 91手机视频在线观看| 久久综合伊人77777| 国产精品揄拍500视频| 欧美成人午夜剧场免费观看| 国产精品久久久久久久久久久久久| 亚洲国产另类久久精品| 国产精品久久久久久一区二区| 色琪琪综合男人的天堂aⅴ视频| 成人做爰www免费看视频网站| 精品伊人久久97| 最近2019中文字幕一页二页| 精品一区精品二区| 欧美一区亚洲一区| 国产精品精品国产| 日本sm极度另类视频| 亚洲精品中文字幕有码专区| 日韩有码片在线观看| 91久久综合亚洲鲁鲁五月天| 日韩亚洲欧美中文在线| 日韩av免费在线观看| 日韩av电影手机在线观看| 久久精品99无色码中文字幕| 亚洲国产精品一区二区三区| 亚洲第一精品久久忘忧草社区| 日韩精品在线观看一区| 国产一区欧美二区三区| 毛片精品免费在线观看| 亚洲激情视频在线| 日本欧美在线视频| 日韩午夜在线视频| 中文字幕综合一区| 国产精品毛片a∨一区二区三区|国| 亚洲欧美日韩天堂| 成人激情综合网| 欧美丰满少妇xxxxx做受| 日本午夜在线亚洲.国产| 2019亚洲日韩新视频| 国产亚洲欧美一区| 国产精品海角社区在线观看| 91久久在线观看| 国产91色在线|| 狠狠躁18三区二区一区| 久久成人精品视频| 亚洲欧洲在线播放| 91精品国产91久久久久久久久| 欧美激情视频在线免费观看 欧美视频免费一| 亚洲国产欧美日韩精品| 亚洲激情国产精品| 日韩精品极品毛片系列视频| 97视频在线观看播放| 亚洲影院高清在线| 国产999精品久久久| 精品自拍视频在线观看| 亚洲成在人线av| 国产精品视频播放| 国产成人高清激情视频在线观看| 欧美亚州一区二区三区| 成人乱色短篇合集| 亚洲精品不卡在线| 国产精自产拍久久久久久| 亚洲视频欧洲视频| 欧美日韩国产精品一区| 欧美大肥婆大肥bbbbb| 亚洲第一视频在线观看| 日韩精品免费在线播放| 久久夜色精品国产欧美乱| 国产91成人video| 亚洲欧洲日产国产网站| 国产97在线视频| 日韩av电影在线网| 日韩在线观看电影| 日韩欧美福利视频| 色播久久人人爽人人爽人人片视av| 国产精品一区二区三区免费视频| 精品人伦一区二区三区蜜桃免费| 日韩欧美在线网址| 国产精品福利久久久| 免费不卡欧美自拍视频| 91精品国产成人www| 日韩欧美高清在线视频| 91精品久久久久久久久久久久久| 国产香蕉97碰碰久久人人| 久久精品国产亚洲一区二区| 亚洲有声小说3d| 亚洲成人免费在线视频| 日韩av中文字幕在线免费观看| 国产成人福利视频| 亚洲欧美日韩一区在线| 欧美日韩高清区| 欧美影院在线播放| 欧美一区二区视频97| 日本精品久久久久影院| 中文字幕久热精品在线视频| 亚洲第一中文字幕| 亚洲欧洲在线看| 久精品免费视频| 国产成人精品日本亚洲| 国产日韩在线精品av| 精品日本高清在线播放| 国产精品96久久久久久又黄又硬| 日本精品久久久久久久| 国产精品视频久久久久| 色青青草原桃花久久综合| 国产精品久久久久久一区二区| 国产精品美女999| 欧美电影在线观看高清| 亚洲国产欧美日韩精品| 欧美精品在线免费播放| 久久久久国产精品一区| 亚洲免费视频一区二区| 久久久久亚洲精品国产| 国产精品久久综合av爱欲tv| yw.139尤物在线精品视频| 自拍偷拍亚洲在线| 日韩美女免费线视频| 国产精品极品美女在线观看免费| 久久99久国产精品黄毛片入口| 社区色欧美激情 | 欧美激情xxxx性bbbb| 国产视频综合在线| 欧美激情2020午夜免费观看| 最近的2019中文字幕免费一页| 国产欧美韩国高清| 日韩电影视频免费| 日韩亚洲欧美成人| 午夜精品福利在线观看| 91精品视频播放| 国产精品啪视频| 亚洲精品网站在线播放gif| 91久久久久久久久久久| 北条麻妃99精品青青久久| 日韩精品一区二区视频| 国产美女久久久| 97成人精品区在线播放| 91av在线免费观看| 97色在线视频| 日韩免费中文字幕| 欧美激情网站在线观看| 91亚洲人电影| 亚洲天堂av电影| 欧美一级高清免费播放| 国产亚洲激情视频在线| 久久精品久久久久久国产 免费| 欧美一级bbbbb性bbbb喷潮片| 日韩高清av一区二区三区| 亚洲欧美综合区自拍另类| 国外日韩电影在线观看| 欧美多人爱爱视频网站| 欧美高跟鞋交xxxxxhd| 欧美电影免费观看电视剧大全| 欧美成人精品h版在线观看| 亚洲成人激情在线|