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自动化运维五:pexpect
p { margin-bottom: 0.25cm; line-height: 120% } a:link { } pexpect是expect的封装,可以实现ssh,ftp,passwd,telne ...
- mysql my.ini配置文件修改无效,修改mysql默认字符集
问题 开始于 使用mysql命令插入中文数据插不进去 ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column ...
- C# 实例练习(第二天)
实例练习 1. 完成简单登录效果,设置用户登录账号密码,清空控制台,进入登录页面,请求用户输入账号.密码和验证码(随机产生),并判断用户输入的信息,给出相应的提示. C#代码如下: 主要知识点: (1 ...
- Java中的注释-快捷键
Eclipse中的快捷键 单行注释 Ctrl+/ 多行注释 Ctrl+Shift+/ 文档注释 Shift +Alt+j /** * @author Lenovo * 文档注释 * ...
- Oracle日期查询:季度、月份、星期等时间信息
--oracle有关时间信息 Select to_char(sysdate,'Q') from dual;--指定日期的季度 Select to_char(sysdate,'MM') from dua ...
- B/S 架构中,网络模型的分解与协议解析
前言 如果是C/S专业毕业的或者是学过计算机网络课程的童鞋们,相信大家都知道网络模型的划分,本文首先来聊一聊目前对于B/S结构中,网络模型分解的两种方式. 没错,相信大家看到这个图片的时候就已经明白了 ...
- 使用VMware Workstation安装win7镜像文件时遇见的错误
最近打算使用虚拟机安装个系统玩玩,就去网站上找了教程安装下win7系统.但是在安装过程中遇见两个问题,现在把遇见的问题总结记录一下,以及解决方法罗列一下. 我当时使用的是VMware 12版的,系统是 ...
- 哪有Python视频百度云链接?
说到Python视频哪个好,小编在这里不好下结论.毕竟孰好孰坏,只有合适的才是最好的.就像买鞋子,一双鞋子好不好,只有合脚才是真的好.不过,这里有些个人认为通俗易懂的Python视频可以分享给大家. ...
- MySQL(四)之MySQL数据类型
一.数据类型概述 MySQL的数据类型有大概可以分为5种,分别是 整数类型.浮点数类型和定点数类型.日期和时间类型.字符串类型.二进制类型.现在可以来看看你对这5种类型的熟悉程度,哪个看起来懵逼了,那 ...
- jquery.tmplate使用心得
jquery.tmplate使用心得 jquery.tmpl.js,是与jquey共同使用的html模板插件.该插件可通过简单的语法将数据放入到html模板中,可以很好的将数据渲染到页面上.该插件在本 ...