当前位置:首页 » 数据仓库 » java购物车数据库设计
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

java购物车数据库设计

发布时间: 2022-07-02 13:50:21

1. Java初学者,哪位友友能帮我设计一个简单的类似超市购物车的程序,参考一下~谢谢!

以前学习java又做个实例,挺值得学习的。
1.首先我先列出我们所需要的java类结构。
1)Database.java --------- 模拟存储商品的数据库
2)McBean.java ------------ 商品实体类,一个普通的javabean,里面有商品的基本属性。
3)OrderItemBean.java --- 订单表。
4)ShoppingCar.java ------ 这个就是最主要的购物车,当然比较简单。
5)TestShoppingCar.java --- 这个是测试类。
2.下面贴出具体代码并带关键注释。
---Database.java
public class Database {
/*采用Map存储商品数据,为什么呢?我觉得这个问题你自己需要想下。
* Integer 为Map的key值,McBean为Map的value值。
*/
private static Map<Integer, McBean> data = new HashMap<Integer, McBean>();
public Database() {
McBean bean = new McBean();
bean.setId(1);
bean.setName("地瓜");
bean.setPrice(2.0);
bean.setInstuction("新鲜的地瓜");
data.put(1, bean);//把商品放入Map
bean = new McBean();
bean.setId(2);
bean.setName("薯仔");
bean.setPrice(1.2);
bean.setInstuction("又好又大的薯仔");
data.put(2, bean);//把商品放入Map
bean = new McBean();
bean.setId(3);
bean.setName("丝瓜");
bean.setPrice(1.5);
bean.setInstuction("本地丝瓜");
data.put(3, bean);//把商品放入Map
}
public void setMcBean(McBean mcBean){
data.put(mcBean.getId(),mcBean);
}
public McBean getMcBean(int nid) {
return data.get(nid);
}
}
---McBean.java
public class McBean {
private int id;//商品编号
private String name;//商品名
private double price;//商品价格
private String instuction;//商品说明
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public String getInstuction() {
return instuction;
}
public void setInstuction(String instuction) {
this.instuction = instuction;
}
}
---ShoppingCar.java
public class ShoppingCar {
private double totalPrice; // 购物车所有商品总价格
private int totalCount; // 购物车所有商品数量
private Map<Integer, OrderItemBean> itemMap; // 商品编号与订单项的键值对

public ShoppingCar() {
itemMap = new HashMap<Integer, OrderItemBean>();
}

public void buy(int nid) {
OrderItemBean order = itemMap.get(nid);
McBean mb;
if (order == null) {
mb = new Database().getMcBean(nid);
order = new OrderItemBean(mb, 1);
itemMap.put(nid, order);
update(nid, 1);
} else {
order.setCount(order.getCount() + 1);
update(nid, 1);
}
}

public void delete(int nid) {
OrderItemBean delorder = itemMap.remove(nid);
totalCount = totalCount - delorder.getCount();
totalPrice = totalPrice - delorder.getThing().getPrice() * delorder.getCount();
}

public void update(int nid, int count) {
OrderItemBean updorder = itemMap.get(nid);
totalCount = totalCount + count;
totalPrice = totalPrice + updorder.getThing().getPrice() * count;
}

public void clear() {
itemMap.clear();
totalCount = 0;
totalPrice = 0.0;
}

public void show() {
DecimalFormat df = new DecimalFormat("¤#.##");
System.out.println("商品编号\t商品名称\t单价\t购买数量\t总价");
Set set = itemMap.keySet();
Iterator it = set.iterator();
while (it.hasNext()) {
OrderItemBean order = itemMap.get(it.next());
System.out.println(order.getThing().getId() + "\t"
+ order.getThing().getName() + "\t"
+ df.format(order.getThing().getPrice()) + "\t" + order.getCount()
+ "\t" + df.format(order.getCount() * order.getThing().getPrice()));
}
System.out.println("合计: 总数量: " + df.format(totalCount) + " 总价格: " + df.format(totalPrice));
System.out.println("**********************************************");
}
}
---OrderItemBean.java
public class OrderItemBean {
private McBean thing;//商品的实体
private int count;//商品的数量

public OrderItemBean(McBean thing, int count) {
super();
this.thing = thing;
this.count = count;
}

public McBean getThing() {
return thing;
}

public void setThing(McBean thing) {
this.thing = thing;
}

public int getCount() {
return count;
}

public void setCount(int count) {
this.count = count;
}

}
---TestShoppingCar.java
package com.shop;

public class TestShoppingCar {
public static void main(String[] args) {
ShoppingCar s = new ShoppingCar();
s.buy(1);//购买商品编号1的商品
s.buy(1);
s.buy(2);
s.buy(3);
s.buy(1);
s.show();//显示购物车的信息
s.delete(1);//删除商品编号为1的商品
s.show();
s.clear();
s.show();
}
}

3.打印输出结果
商品编号 商品名称 单价 购买数量 总价
1 地瓜 ¥2 3 ¥6
2 薯仔 ¥1.2 1 ¥1.2
3 丝瓜 ¥1.5 1 ¥1.5
合计: 总数量: ¥5 总价格: ¥8.7
**********************************************
商品编号 商品名称 单价 购买数量 总价
2 薯仔 ¥1.2 1 ¥1.2
3 丝瓜 ¥1.5 1 ¥1.5
合计: 总数量: ¥2 总价格: ¥2.7
**********************************************
商品编号 商品名称 单价 购买数量 总价
合计: 总数量: ¥0 总价格: ¥0
**********************************************
4.打字太累了,比较匆忙,但是主要靠你自己领会。哪里不清楚再提出来。

2. JAVA map编写购物车的问题

publicclassProct{
privateIntegerproctid;
privateStringproctname;
privateStringcategory;
privatefloatprice;
privateStringpicture;
publicProct(Integerproctid,Stringproctname,Stringcategory,floatprice,Stringpicture){
this.proctid=proctid;
this.proctname=proctname;
this.category=category;
this.price=price;
this.picture=picture;
}
publicIntegergetProctid(){
returnproctid;
}
publicvoidsetProctid(Integerproctid){
this.proctid=proctid;
}
publicStringgetProctname(){
returnproctname;
}
publicvoidsetProctname(Stringproctname){
this.proctname=proctname;
}
publicStringgetCategory(){
returncategory;
}
publicvoidsetCategory(Stringcategory){
this.category=category;
}
publicfloatgetPrice(){
returnprice;
}
publicvoidsetPrice(floatprice){
this.price=price;
}
publicStringgetPicture(){
returnpicture;
}
publicvoidsetPicture(Stringpicture){
this.picture=picture;
}
}
publicclassProctItem{
privateProctproct;
privateIntegercount;
publicProctItem(Proctproct,Integercount){
this.proct=proct;
this.count=count;
}
publicProctgetProct(){
returnproct;
}
publicvoidsetProct(Proctproct){
this.proct=proct;
}
publicIntegergetCount(){
returncount;
}
publicvoidsetCount(Integercount){
this.count=count;
}
publicfloatgetTotalPrice(){
returnthis.proct.getPrice()*count;
}
}
publicclassShoppingCart{
privateHashMap<Integer,ProctItem>items=newHashMap<Integer,ProctItem>();
publicstaticvoidmain(String[]args){
ShoppingCartcart=newShoppingCart();
System.out.println("初始化产品");
Proctbanana=newProct(10000,"香蕉","水果",2.50F,"banana.jpg");
Proctapple=newProct(10001,"苹果","水果",3.99F,"apple.jpg");
Proctorange=newProct(10002,"桔子","水果",1.80F,"orange.jpg");
Proctpen=newProct(10003,"钢笔","文具",12.00F,"pen.jpg");
Proctpencil=newProct(10004,"铅笔","文具",1.00F,"pencil.jpg");
System.out.println("###############################################");
System.out.println("添加苹果");
cart.addToCart(apple);
System.out.println(cart.showAll());
System.out.println("当前购物车总价:"+cart.getTotalPrice());
System.out.println("***********************************************");
System.out.println("添加香蕉");
cart.addToCart(banana);
System.out.println(cart.showAll());
System.out.println("当前购物车总价:"+cart.getTotalPrice());
System.out.println("***********************************************");
System.out.println("修改香蕉数量");
cart.modifyCart(banana,5);
System.out.println(cart.showAll());
System.out.println("当前购物车总价:"+cart.getTotalPrice());
System.out.println("***********************************************");
System.out.println("删除苹果");
cart.delFromCart(apple);
System.out.println(cart.showAll());
System.out.println("当前购物车总价:"+cart.getTotalPrice());
System.out.println("***********************************************");
System.out.println("添加铅笔");
cart.addToCart(pencil);
System.out.println(cart.showAll());
System.out.println("当前购物车总价:"+cart.getTotalPrice());
System.out.println("***********************************************");
}
publicvoidaddToCart(Proctproct){
this.items.put(proct.getProctid(),newProctItem(proct,1));
}
publicvoiddelFromCart(Proctproct){
this.items.remove(proct.getProctid());
}
publicStringshowAll(){
Stringdetail="";
for(Integerkey:this.items.keySet()){
detail+=this.items.get(key).getProct().getProctname()+":"+this.items.get(key).getCount()+"件,单价"+this.items.get(key).getProct().getPrice()+",小计"+this.items.get(key).getTotalPrice()+" ";
}
returndetail;
}
publicbooleanmodifyCart(Proctproct,Integercount){
if(this.items.containsKey(proct.getProctid())){
this.items.get(proct.getProctid()).setCount(count);
returntrue;
}
returnfalse;
}
publicfloatgetTotalPrice(){
floattotal=0;
for(Integerkey:this.items.keySet()){
total+=this.items.get(key).getTotalPrice();
}
returntotal;
}
}

3. 求Java语言为书城设计一个简单购物车类。

public class ShoppingCart {//购物车类
private Procted prod;//商品类,存放商品信息
private int num;//商品数量
public Procted getProd() {
return prod;
}
public void setProd(Procted prod) {
this.prod = prod;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
}
public class Procted {//商品类
private String prodName;//商品名称
private Double marketPrice;//市场价
private Double sellPrice;//本店价
private Double save;//优惠
private Short points;//积分
public String getProdName() {
return prodName;
}
public void setProdName(String prodName) {
this.prodName = prodName;
}
public Double getMarketPrice() {
return marketPrice;
}
public void setMarketPrice(Double marketPrice) {
this.marketPrice = marketPrice;
}
public Double getSellPrice() {
return sellPrice;
}
public void setSellPrice(Double sellPrice) {
this.sellPrice = sellPrice;
}
public Double getSave() {
return save;
}
public void setSave(Double save) {
this.save = save;
}
public Short getPoints() {
return points;
}
public void setPoints(Short points) {
this.points = points;
}
}
有用请采纳

4. JAVA SQL问题 购物车 把商品加入购物车使用什么方法

  1. 再加一个表格列:是否已加入购物车

  2. 点击按钮后,进行入库操作,insert语句

  3. 不行,这样的话,只能加,不能减

  4. 你应该在每行添加一个checkbox复选框

  5. 勾选了,就代表入库了,取消了就delete

  6. 对,就是这样

5. 购物车使用什么java设计模式

mvc模式。modern+view+control 数据层+前台的jsp页面展示+逻辑层。
数据指的是数据库和你web项目的链接代码以及类和方法的调用。
jsp页面就是你要什么数据就把它放到页面里。
逻辑就是servlet文件,它把数据层和前台的jsp页面进行编译 然后直接在页面运行代码。

6. java写的简易购物车 简历里描述一下

第一: 写你的开发平台:比如windows 还是Linux。
第二:写你的开发工具:MyEclipse 还是Eclipse。 数据库MySQL 还是Oracle。。。。。
第三:写你的框架:ssh+jquery +Ajax+jsp+......
第四:写你参与的开发模块。涉及到的技术亮点。比如登陆模块,用到的是AJAX异步数据验证。或者复杂点的:在线文件预览:用到技术 OpenOffice+FlexPaper+swfTools等。
第五 :写你遇到技术难题,你自己是如何解决的(注意多写自己独立解决:面试官很在意个人自我解决能力或者自学能力),
第六:写你完成这个项目的收获。
大致也就这样了。

7. 关于java购物车设计的一些问题 1.支付完成如果断网了,怎样判断用户支付成功 2.如果购物车放

我想应该是购物车是放到cookie中的,需要结算的时候,登录后就会把cookie中的信息set到用户对象中.

8. 用JAVA编写购物车程序.

这个应该很简单的,数据库连接如果你已经写好了,剩下的应该只是调用ResultSet把数据添加进数据库就行。

9. 急求java购物车代码

package bean;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author Administrator
* 购物车类:
* 为了方便将商品信息绑订到session上面而设计的一个
* 工具,提供了商品的添加,删除,列表,计价,清空,
* 修改功能。
*/
public class Cart {
//items属性:用来保存商品
private List<CartItem> items =
new ArrayList<CartItem>();
/**
* 将商品添加到购物车
*/
public boolean add(CartItem item){
for(int i=0;i<items.size();i++){
CartItem curr = items.get(i);
if(curr.getC().getId() == item.getC().getId()){
//该商品已经购买过
return false;
}
}
//没有购买过,则添加该商品
items.add(item);
return true;
}
/**
* 从购物车当中删除某件商品
*/
public void delete(int id){
for(int i=0;i<items.size();i++){
CartItem curr = items.get(i);
if(curr.getC().getId() == id){
items.remove(curr);
return;
}
}
}
/**
* 获得购物车中所有商品信息
*/
public List<CartItem> list(){
return items;
}
/**
* 商品总价
*/
public double cost(){
double total = 0;
for(int i=0;i<items.size();i++){
CartItem curr = items.get(i);
total += curr.getC().getPrice() * curr.getQty();
}
return total;
}
/**
* 清空购物车中的所有商品
*/
public void clear(){
items.clear();
}
/**
* 修改购物车中某种商品的数量
*/
public void modify(int id,int qty){
for(int i=0;i<items.size();i++){
CartItem curr = items.get(i);
if(curr.getC().getId() == id){
curr.setQty(qty);
return;
}
}
}
}

10. 求指教 JAVA写网上书店的购物车代码 使用:xml页面 数据库..

思路很简单开发一个小型的WEB应用,部署在长沙和北京两台服务器上,安装个tomact就可以运行和部署了这个WEB应用主要做如下事情:
接受请求,封装json串 (为什么JSON可以查一下网上大把的)1)收到http请求后,校验是否是来自另外一个服务器的请求(通过判断请求的IP地址是否否为另外一个服务器的IP地址即可)2)校验通过后读取本地服务器数据库,查询需要实时同步的数据表,查出需要同步的数据,组装成数据对象集(例如一个arraylist),然后转换为 json格式串,写入到response输出流中。
发请求获取返回结果,插入/更新数据库1)从reponse输出流中读取返回结果,将JSON串转化为对象集(网上大把的),然后开始更新/插入数据/删除数据——————————————————————————————————————由于涉及三种操作类型 更新 删除 插入 ,所以可以分别实现三个servlet来分别负责:1)查询新增数据/插入新增对象2) 查询更新数据/更新新增对象3)查询删除数据/删除待删除的对象——————————————————————————————————————定时调度同步程序使用timer写个jar程序,循环每5分钟利用httpconnnection一次请求之行下插入/更新/删除的servlet___________________________________________________________________