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

首頁 > 編程 > JSP > 正文

如何用jsp完成購物程序

2024-09-05 00:18:18
字體:
來源:轉載
供稿:網友

? ? ? ?在學習JSP之后,很多人都會找個小模塊來練手,比如完成購物程序就是一個很好的模塊,那么我們應該如何用JSP完成購物程序呢?

下面是我用JSP和數據庫做的購物車的源程序:

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

//shop_cart.jsp

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page session="true" %>
<%@ page language="java" import="java.sql.*" %>

<%

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);
}
%>

?




height="2">




?

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

age=<%=curpage%>">

height="2">




?

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

bordercolordark="#FFFFFF" bgcolor="#FFB468">


?

align="center">

購物車


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

bordercolorlight="#FFB468"
bordercolordark="#FFFFFF" bgcolor="#FFB468">


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

&curpage=<%=curpage%>">繼續購物


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

bordercolorlight="#FFB468"
bordercolordark="#FFFFFF" bgcolor="#FFB468">


href="javascript: document.forms[0].submit()">重新計費

?


align="center">

border="1" cellpadding="2" cellspacing="0" width="100%"

bordercolorlight="#FFB468"
bordercolordark="#FFFFFF" bgcolor="#FFB468">


?



清空購物車

?


border="1" cellpadding="2" cellspacing="0" width="100%" bordercolorlight="#FFB468"
bordercolordark="#FFFFFF" bgcolor="#FFB468">


?

確認購買

?





?


bordercolorlight="#FFB468" bordercolordark="#FFFFFF" height="40">










<%
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));
%>












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












?
商品名稱 市場價 優惠價 數量 小計 定金比例 定金小計 刪除
<%=product_name%> <%=product_price%> <%=product_discount%> " size="3" value="<%=cart_quantity%>"> <%=product_discount*cart_quantity%> <%=product_first + "%"%> <%=product_first*product_discount*cart_quantity/100.0%>

delete

總計

<%=total%>

定金總計

<%=total_first%>

結余

<%=total-total_first%>


<%
}else{
%>

?

購物車為空!


<%
}
%>


數據庫操作部分

程序用到兩個表:
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.*" %>

<%
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;
}
}


?
? ? ? 到這里,如何用jsp完成購物程序的內容就講完了。如果有什么不清楚可以留言給我,更多詳細內容就請關注我們錯新技術頻道吧。

?

上一篇:JSP服務器的常見漏洞

下一篇:菜鳥入門JSP基礎教程

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片
猜你喜歡的新聞
猜你喜歡的關注

新聞熱點

疑難解答

圖片精選

網友關注

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩av一区在线| 精品视频9999| 91欧美日韩一区| 国产aⅴ夜夜欢一区二区三区| 久久国产精品久久久久久| 日韩av电影在线免费播放| 欧美午夜视频在线观看| 日韩中文在线不卡| 亚洲成人教育av| 55夜色66夜色国产精品视频| 亚洲第一页中文字幕| 欧美激情2020午夜免费观看| 日韩欧美成人区| 精品无人国产偷自产在线| 精品日本美女福利在线观看| 国产日韩亚洲欧美| 日韩欧美一区二区在线| 亚洲精品网址在线观看| 麻豆国产精品va在线观看不卡| 精品偷拍一区二区三区在线看| 亚洲男人天堂久| 91亚洲国产成人精品性色| 国产精品欧美在线| 精品成人国产在线观看男人呻吟| 欧美精品www| 久久福利视频导航| 欧美日韩美女在线观看| 亚洲精品国产精品国产自| 2018中文字幕一区二区三区| 亚洲精品suv精品一区二区| 精品中文字幕在线观看| 国产精品久久久久99| 美女精品久久久| 欧美激情按摩在线| 欧美性色xo影院| 欧美一级成年大片在线观看| 26uuu另类亚洲欧美日本老年| 成人精品视频久久久久| 欧美日韩人人澡狠狠躁视频| 欧美亚洲在线观看| 清纯唯美亚洲激情| 日韩精品免费一线在线观看| 欧美丰满少妇xxxx| 亚洲第一精品福利| 欧美xxxx做受欧美.88| 国产精品极品美女粉嫩高清在线| 国产午夜精品久久久| 亚洲无限av看| 色综合老司机第九色激情| 欧美国产中文字幕| 欧美wwwwww| 一本色道久久综合亚洲精品小说| 欧美极品美女视频网站在线观看免费| 好吊成人免视频| 91九色国产在线| 久久久久99精品久久久久| 成人福利视频在线观看| 97视频免费在线看| 精品久久久久久久久久ntr影视| 亚洲国产精彩中文乱码av在线播放| 欧美精品videos| 国产成人精品av| 136fldh精品导航福利| 日韩视频―中文字幕| 热门国产精品亚洲第一区在线| 欧美最猛黑人xxxx黑人猛叫黄| 精品欧美一区二区三区| 78色国产精品| 国产aⅴ夜夜欢一区二区三区| 欧美性猛xxx| 亚洲qvod图片区电影| 亚洲国产天堂久久综合网| 亚洲综合最新在线| 青青青国产精品一区二区| 国产精品久久久久久久久借妻| 精品美女永久免费视频| 国产成人精品在线视频| 亚洲性日韩精品一区二区| 久久久久久高潮国产精品视| www.日本久久久久com.| 久久99久国产精品黄毛片入口| 精品国产依人香蕉在线精品| 欧美久久精品午夜青青大伊人| 欧美亚洲日本黄色| 97国产真实伦对白精彩视频8| 亚洲精品456在线播放狼人| 米奇精品一区二区三区在线观看| 久久久久久欧美| 啊v视频在线一区二区三区| 91精品国产91久久久久久| 欧美大尺度激情区在线播放| 久久精品免费播放| 欧美自拍大量在线观看| 伊人av综合网| 九九精品视频在线| 一夜七次郎国产精品亚洲| 色综合久久久888| 日韩电影免费在线观看中文字幕| 欧美日韩中文在线| 亚洲成人xxx| 欧美激情三级免费| 亚洲男人天堂网| 777777777亚洲妇女| 欧美巨大黑人极品精男| 日韩激情av在线免费观看| 久久精品2019中文字幕| 日韩欧美亚洲范冰冰与中字| 亚洲激情视频在线播放| 亚洲精品在线视频| 久久成人精品电影| 精品亚洲永久免费精品| 日韩电影在线观看永久视频免费网站| 国产日韩在线亚洲字幕中文| 亚洲国产精品99久久| 久久成人一区二区| 欧美性xxxx极品hd欧美风情| 国产视频精品va久久久久久| 日韩av在线资源| 亚洲欧美精品一区二区| 国产成人精品在线视频| 国产成+人+综合+亚洲欧美丁香花| 97精品欧美一区二区三区| 亚洲第一偷拍网| 中文字幕自拍vr一区二区三区| 日韩高清不卡av| 中文字幕在线亚洲| 精品高清一区二区三区| 国内精品400部情侣激情| 亚洲最大的av网站| 欧美亚洲视频在线观看| 欧美一区二区三区艳史| 久久精品99国产精品酒店日本| 国产精品久久久久国产a级| 亚洲人精选亚洲人成在线| 美日韩在线视频| 亚洲欧美中文日韩在线v日本| 在线播放国产一区中文字幕剧情欧美| 亚洲欧洲在线播放| 欧美区二区三区| 色综合久综合久久综合久鬼88| 日韩美女写真福利在线观看| 国产剧情日韩欧美| 欧美影院在线播放| 亚洲护士老师的毛茸茸最新章节| 国产精品亚洲美女av网站| 日韩中文字幕欧美| 日韩欧美亚洲成人| 国产精品久久久久久中文字| 亚洲女同性videos| 欧美成人免费网| 亚洲18私人小影院| 成人h视频在线观看播放| 欧美激情中文字幕在线| 亚洲成人精品视频在线观看| 日韩av电影中文字幕| 国产精品丝袜久久久久久高清| 日韩美女视频中文字幕| 亚洲精品日产aⅴ| 亚洲亚裔videos黑人hd| 国产精品老女人精品视频| 国产亚洲激情在线| 国产69久久精品成人| 欧美黑人xxxⅹ高潮交| 9.1国产丝袜在线观看|