首先,完成「顯示當前使用者的所有收貨位址的列表」,在此前開發「收貨位址」相關功能時,已經可以通過/addresses/
這個url獲取收貨位址列表!則直接在orderconfirm.html
中通過$.ajax()
獲取資料並顯示即可!
接下來,應該「顯示使用者在前序頁面中選擇的購物車中的商品的列表」,對應的查詢功能的sql語句大致是:
select * from t_cart left join t_product on t_cart.pid=t_product.id where cid in (?,?,?)
listfindbycids(integer cids);
select
cid, uid,
pid, t_cart.num,
t_cart.price, t_product.price as realprice,
title, image
from
t_cart
left join
t_product
on t_cart.pid=t_product.id
where
cid in
# order by
t_cart.created_time desc
完成持久層後,接下來,需要在icartservice
業務層介面中新增抽象方法,以對外提供資料訪問功能:
listgetbycids(integer cids, integer uid);
然後,在實現類中,先私有化編寫持久層的方法:
private listfindbycids(integer cids)
並重寫介面中的抽象方法:
public listgetbycids(integer cids, integer uid)
listresult = findbycids(cids);
iteratorit = result.iterator();
while(it.hasnext())
} return result;
}
測試完成後,需要在控制器層提供介面:
然後,開啟瀏覽器,可以通過http://localhost:8080/carts/get_by_cids?cids=14&cids=15&cids=16
進行單元測試。
測試完成後,需要在orderconfirm.html
中發出對這個url的請求,以獲取資料,並顯示。
建立「訂單表」:
create table t_order (
oid int auto_increment comment '訂單id',
uid int comment '使用者id',
recv_name varchar(50) comment '收貨人receiver姓名',
recv_phone varchar(20) comment '收貨人**',
recv_province varchar(50) comment '收貨位址所在省',
recv_city varchar(50) comment '收貨位址所在市',
recv_area varchar(50) comment '收貨位址所在區',
recv_address varchar(100) comment '詳細收貨位址',
total_price bigint comment '總價',
status int comment '狀態:0-未支付,1-已支付,2-已取消',
order_time datetime comment '下單時間',
pay_time datetime comment '支付時間',
created_user varchar(50) comment '建立人',
created_time datetime comment '建立時間',
modified_user varchar(50) comment '最後修改人',
modified_time datetime comment '最後修改時間',
primary key (oid)
) default charset=utf8;
建立「訂單商品表」:
create table t_order_item (
id int auto_increment comment 'id',
oid int comment '歸屬的訂單id',
pid int comment '商品id',
title varchar(100) comment '商品標題',
image varchar(500) comment '商品',
price bigint comment '商品單價',
num int comment '購買數量',
created_user varchar(50) comment '建立人',
created_time datetime comment '建立時間',
modified_user varchar(50) comment '最後修改人',
modified_time datetime comment '最後修改時間',
primary key (id)
) default charset=utf8;
所以,也只需要1個xml對映檔案。
抽象類和介面的區別
藐視;語法方面的區別;
深層次的理解;
應用方式、經驗分享。
類:類別;介面:規範、標準、行為模式等。
類 is a 抽象類;實現類 has a 介面。
public class teacher extends person
public class student extends person
廚師,醫生,司機……
public class person implements 講授, 學習, 烹飪, 醫療, 駕駛
st語言 陣列的常用方法 ST語言
st 語言學習心得 一 工程的簡介和建立工程 1.工程檔案的結 工程檔案的字尾名為 pro,在新工程中建立的第乙個程式結構單元 program organization unit 將被自動命名為 plc prg 這個程式結構單元就類似於 c語言中的主程式。在 plc prg 中可以呼叫各種函式及功能...
演算法 ST表
想學習一下lca倍增,先 水乙個黃題 學一下st表 這是乙個運用倍增思想,通過動態規劃來計算區間最值的演算法 求出區間最值 回答詢問 求出區間最值 用 f i j 來儲存從第 j 個點開始,向後 2 i 1 個點 共 2 i 個點 中的最值 包括本身 利用二分法的思想,將區間 j,j 2 i 1 平...
ST演算法詳解
coded by jelly goat.這個主要是說st表的。首先了解一下st表是什麼。先來乙個老套的情景帶入。假設所有的題目都是1s,128ms 有一天,蒟蒻jelly goat用手 給你出了一套 n 1000 的資料,然後讓你輸出 m 1000 次最小值。你說了,那不就直接暴力嗎?然後,蒟蒻je...