Java课程设计 购物车系统(个人博客)
1. 团队课程设计博客链接
2. 个人负责模块或任务说明
- 编写ShoppingCart类,连接数据库
- 编写updateCart类,从数据库中获取商品信息,获取指定编号的商品信息
- 编写Users类,从数据库中获取商品用户信息,获取指定用户名的商品信息.
3. 自己的代码提交记录截图

4. 自己负责模块或任务详细说明
- 1.基本类,商品类name和操作类Item,beand类中属性有:商品编号num,商品名称name,商品价格price,商品数量amount,商品图片picture.其中基本的set/get方法外,还有商品数目增删方法;Operate类中属性有:静态数组arr,购物车总价total.其中还包含根据商品编号进行增加商品addGoods(),删除商品removeGoods(),以及计算购物车总价格totalPrice()等方法.
- 2.基本类,商品类Users和与数据库建立连接类DBConnection,Users类中属性有:编号num,用户名name,密码password.其中含有基本的set/get方法;DBConnection类中负责与数据库建立连接.
- 3.编写一个商品的获取信息类Goods其中用getAllGoods()方法获得所有商品的信息,以及getItByNum(int num)方法根据商品编号num获得商品信息;编写Users类,含有从数据库中获取商品用户信息,获取指定用户名的商品信息.
主要代码
public class ShoppingCart
{
private int itemCount; // 商品数量
private double totalPrice; // 购物车总价格
private int capacity; // 数组大小
private Item[] cart;
// -----------------------------------------------------------
// Creates an empty shopping cart with a capacity of 5 items.
// -----------------------------------------------------------
public ShoppingCart()
{
capacity = 5;
itemCount = 0;
totalPrice = 0.0;
cart = new Item[capacity];
}
/**
*
* 添加功能
*/
public void buy(Item item)
{
if(itemCount == capacity){
increaseSize();
}
cart[itemCount] = item;
totalPrice += cart[itemCount].getPrice();
itemCount++;
return;
}
/**
* 删除功能
*/
public void deleteCart(int No) {
int i;
for (i = 0; i < cart.length; i++) {
if(cart[i].getNo() == No){
totalPrice -= cart[i].getPrice();
for (int j = i; j < cart.length-1; j++) {
cart[j] = cart[j+1];
}
itemCount--;
break;
}
}
if(i == cart.length){
System.out.println("无此商品,无法删除。");
}
return;
}
/**
* 修改功能
*/
public void updateCart(int No) {//修改编号
int i;
@SuppressWarnings("resource")
Scanner scan = new Scanner(System.in);
for (i = 0; i < cart.length; i++) {
if(cart[i].getNo() == No){
totalPrice -= cart[i].getPrice();
System.out.println("需要修改的信息如下:");
System.out.println(cart[i]);
System.out.println("请输入新的产品信息:");
cart[i].setNo(scan.nextInt());
cart[i].setName(scan.next());
cart[i].setBrand(scan.next());
cart[i].setPrice(scan.nextDouble());
totalPrice += cart[i].getPrice();
break;
}
}
if(i == cart.length){
System.out.println("无此商品");
}
return;
}
/**
* 增加购物车容量
*/
private void increaseSize()
{
Item[] temp = new Item[capacity + 3];
for (int i = 0; i < cart.length; i++) {
temp[i] = cart[i];
}
cart = temp;
}
/**
*获取商品总值
*/
public double getTotalPrice() {
return totalPrice;
}
public Item[] getCart() {
return cart;
}
public void setCart(Item[] cart) {
this.cart = cart;
}
/**
* 输出购物车信息
*/
public String toString()
{
String contents = "您的购物车信息如下:";
contents += "\nno\t\tname\t\tbrand\t\tprice\n";
for (int i = 0; i < itemCount; i++)
contents += cart[i].toString() + "\n";
return contents;
}
}
运行过程







5. 课程设计感想
购物车系统涉及到了web的相关知识,通过查资料收获到了很多东西,如解决了界面的设计,网页间的跳转以及web与数据库相连接等问题。通过不断借鉴与学习反思弥补自己知识储备上的不足,能够将知识运用到实践中,和小伙伴完成一项任务,感到很充实。
Java课程设计 购物车系统(个人博客)的更多相关文章
- JAVA课程设计+五子棋(团队博客)
JAVA课程设计 利用所学习的JAVA知识设计一个五子棋小游戏 1.团队名称.团队成员介绍(菜鸟三人组) 杨泽斌[组长]:201521123049 网络1512 叶文柠[组员]:20152112305 ...
- Java课程设计 ————五子棋 (个人博客)
JAVA课程设计 五子棋(博客个人版) •团队课程设计博客链接 http://www.cnblogs.com/mz201521044152/p/7065575.html •个人负责模块或任务说明 1. ...
- Java课程设计 购物车系统(个人博客) 201521123052 蓝锦明
1. 团队课程设计博客链接 课程设计团队博客 2. 个人负责模块或任务说明 (1)制作图形菜单引导界面 (2)定义各获取和输出类函数 3. 自己的代码提交记录截图 4. 自己负责模块或任务详细说明 i ...
- java 课程设计 购物车系统 个人
Q1.团队课程设计博客链接 团队博客 Q2.个人负责模块或任务说明 我主要负责main函数的编写和系统中瞎看功能代码的编写. Q3.自己的代码提交记录截图 main函数代码如下: public sta ...
- java课程设计——算术运算测试个人博客
1.团队课程设计链接 团队博客:http://www.cnblogs.com/yytx/p/7064790.html 2.个人负责模块 有关排行榜的界面设计和代码编写 3.自己的代码提交记录截图 4. ...
- JAVA课程设计+五子棋(个人博客)
1.团队博客地址: http://www.cnblogs.com/yzb123/p/7063424.html 2.个人负责模块或任务说明 游戏初始化,清除棋盘上的棋子 鼠标监听器 棋子落棋 判断胜负 ...
- java课程设计-表达式运算(团队博客)
1 团队课程设计博客 1 团队名称.团队成员介绍 团队名称 奔跑吧土拨鼠 团队成员 洪亚文 201521123065 网络1513 郑晓丽 201521123066 网络1513 2 项目git地址 ...
- JAVA课程设计+购物车 个人博客
1. 团队课程设计博客链接 2.个人负责模块或任务说明 将数据库中已经存在的商品取出,用表格显示到页面中. 实现在商品页面的购买,直接弹出消息框,输出价格,实现购买. 实现在商品页面进行添加购物车,并 ...
- java购物车系统 团队博客
1. 团队名称.团队成员介绍(需要有照片) 团队名称:一颗LFL 团队成员:廖余俊 计算机工程学院网络工程1512 学号201521123053 方旭 计算机工程学院网络工程1512 学号201521 ...
随机推荐
- python ——面向对象进阶
1.staticmethod和classmethod staticmethod 静态方法: 让类里的方法,直接被类调用,就像正常的函数一样 宝宝,男 博博,女 海娇,男 海燕,女 海东,男 海峰,男 ...
- 2、粘包现象(struct模块)
昨天我们所做的套接字是有漏洞的,它会出现粘包现象,没有发现这个问题的我们今天会进行演示.今天也会稍微讲解一下基于udp的套接字. 一.基于udp的套接字 udp是无链接的,先启动哪一端都不会报错 ud ...
- 关于Java String 类型转换时null的问题(转)
关于Java String 类型转换时null的问题 开发中经常遇到从集合类List.Map中取出数据转换为String的问题,这里如果处理不好,经常会遇到空指针异常java.lang.NullPoi ...
- 【Linux】Apache Httpd 服务管理
基本的操作方法: 本文假设你的apahce安装目录为/usr/local/apache2,这些方法适合任何情况 apahce启动命令: 推荐 [user@master1 ~]$ /usr/local ...
- Apache Storm 1.1.0 中文文档 | ApacheCN
前言 Apache Storm 是一个免费的,开源的,分布式的实时计算系统. 官方文档: http://storm.apache.org 中文文档: http://storm.apachecn.org ...
- 常用路径 URL 中的斜杠与反斜杠
常用路径中的斜杠与反斜杠... ------------------------------ 斜杠:反斜杠:======================电脑能识别的斜杠有两种:斜杠分正斜杠(forwa ...
- DOM-----style属性对照表
CSS和Java script 标签对照表 盒子标签和属性对照 CSS语法 (不区分大小写) Java script 语法 (区分大小写) border border border-bottom bo ...
- DeepLearning.ai学习笔记(一)神经网络和深度学习--Week3浅层神经网络
介绍 DeepLearning课程总共五大章节,该系列笔记将按照课程安排进行记录. 另外第一章的前两周的课程在之前的Andrew Ng机器学习课程笔记(博客园)&Andrew Ng机器学习课程 ...
- Animate.css 一款牛逼的css3动画库
Animate.css是一款很牛逼的,跨浏览器的css3动画库,使用方法也很简单只要引入一个animate.min.css就可以了, 简单使用 1 首先引入 animate的 css 文件样式 cdn ...
- OC
一,字符串 1创建一个字符串 1) NSString *str2=[[NSString alloc]initWithString:str1]; 2) NSString *string2=[[NSSt ...