欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java的基础知识运用,一个简单的电商管理系统

程序员文章站 2022-03-07 09:34:31
...

项目简介

        完成一个电商系统的商品模块功能,商品类包含以下属性:商品ID,商品名,类别名,单价,库存量,产地,计量单位等信息,要求实现商品管理功能以及管理员登录功能,具体如下:

  1. 管理员登录(账号密码固定(123456/123456)
  2. 修改管理员密码
  3. 商品添加
  4. 商品列表
  5. 查询指定id的商品
  6. 根据商品id删除商品
  7. 根据id修改指定商品的价格
  8. 根据id修改指定商品的库存
  9. 根据商品类别查询所有商品
  10. 查询指定价格区间的商品信息

思路

  这个项目我创建了五个类来完成。分别为商品类,商品管理类,管理员类,点击类与测试类。

商品类用于初始化商品的属性。

商品管理类用于实现项目的功能

管理类,我初始了管理员的账号和密码

界面类主要用于制作基于控制台的项目界面

测试类放入主函数,用于测试本项目

商品类(Goods)

public class Goods {
	private int id;
	private String name;
	private String kind;
	private double price;
	private int kucunliang;
	private String birthplace;
	private String jiliangdanwei;
	@Override
	public String toString() {
		return "Goods [id=" + id + ", name=" + name + ", kind=" + kind + ", price=" + price + ", kucunliang="
				+ kucunliang + ", birthplace=" + birthplace + ", jiliangdanwei=" + jiliangdanwei + "]";
	}
	public Goods(int id, String name, String kind, double price, int kucunliang, String birthplace,
			String jiliangdanwei) {
		super();
		this.id = id;
		this.name = name;
		this.kind = kind;
		this.price = price;
		this.kucunliang = kucunliang;
		this.birthplace = birthplace;
		this.jiliangdanwei = jiliangdanwei;
	}
	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 String getKind() {
		return kind;
	}
	public void setKind(String kind) {
		this.kind = kind;
	}
	public double getPrice() {
		return price;
	}
	public void setPrice(double price) {
		this.price = price;
	}
	public int getKucunliang() {
		return kucunliang;
	}
	public void setKucunliang(int kucunliang) {
		this.kucunliang = kucunliang;
	}
	public String getBirthplace() {
		return birthplace;
	}
	public void setBirthplace(String birthplace) {
		this.birthplace = birthplace;
	}
	public String getJiliangdanwei() {
		return jiliangdanwei;
	}
	public void setJiliangdanwei(String jiliangdanwei) {
		this.jiliangdanwei = jiliangdanwei;
	}

}

商品管理类(GoodsManage)

import java.util.ArrayList;

public class GoodsManage {
	static ArrayList<Goods> list = new ArrayList<>();

	public void add(Goods g) {
		list.add(g);
	}

	public void show() {
		for (Goods g : list) {
			System.out.println(g.toString());
		}
	}
	public boolean showid(int id){
		for(Goods u:list){
			if(u.getId()==id){
				System.out.println(u.toString());
				return true;
			}
		}
		return false;
	}

	public void delete(int id) {
		for (Goods u : list) {
			if (u != null && u.getId() == id) {
				System.out.println(u.getName() + "已删除!!!");
				list.remove(u);
			}

		}
		System.out.println(id + "号商品不存在");
	}

	public void xiuGaiJiage(int id, double price) {
		for (Goods u : list) {
			if (u != null && u.getId() == id) {
				System.out.println(id + "号商品的价格由" + u.getPrice() + "修改为" + price);
				u.setPrice(price);
			}
		}
		System.out.println(id + "号商品不存在");
	}

	public void xiuGaiKuCun(int id, int kucun) {
		for (Goods u : list) {
			if (u != null && u.getId() == id) {
				System.out.println(id + "号商品的库存量由" + u.getPrice() + "修改为" + kucun);
				u.setKucunliang(kucun);
			}
		}
		System.out.println(id + "号商品不存在");
	}

	public void showKind(String kind) {
		for (Goods u : list) {
			if (u != null && u.getKind() == kind) {
				System.out.println(u.toString());
			}
			System.out.println(kind + "类商品不存在");
		}
	}

	public void showPrice(double price01, double price02) {
		if (price01 > price02) {
			double temp;
			temp = price01;
			price01 = price02;
			price02 = temp;
		}
		for (Goods u : list) {
			if (u != null && u.getPrice() >= price01 && u.getPrice() <= price02) {
				System.out.println(u.toString());
			}

		}
		System.out.println("此区间内商品不存在");

	}

}

管理员类(Admin)

public class Admin {
	private int zhanghao=123456;
	private int password=123456;
	public boolean init(int a,int b){
		if(zhanghao==a&&password==b){
			System.out.println("登录成功");
			return true;
		}
		return false;
		}
	

	public void xiuGaiMiMa(int a){
		password=a;
	}
	public int getZhanghao() {
		return zhanghao;
	}
	public void setZhanghao(int zhanghao) {
		this.zhanghao = zhanghao;
	}
	public int getPassword() {
		return password;
	}
	public void setPassword(int password) {
		this.password = password;
	}

}

界面类(Client)

import java.util.ArrayList;
import java.util.Scanner;

public class Client {
	private Scanner sc;
	private GoodsManage gd = new GoodsManage();
	private Admin a = new Admin();
	static ArrayList<Goods> list = new ArrayList<>();

	public void dengLu() {
		msg("====【1】管理员登录================");
		msg("请按一下格式输入:账号/密码");
		sc = new Scanner(System.in);
		String s = sc.nextLine();
		String[] info = s.split("/");
		if (a.init(Integer.parseInt(info[0]), Integer.parseInt(info[1]))) {
			menu();
		} else {
			msg("账号或密码错误");
			dengLu();
		}
	}

	public void menu() {
		msg("===================================");
		msg("====电商系统=======================");
		msg("====【1】修改密码==================");
		msg("====【2】商品添加==================");
		msg("====【3】商品列表==================");
		msg("====【4】查询指定id商品============");
		msg("====【5】根据商品id删除商品========");
		msg("====【6】根据id修改商品价格========");
		msg("====【7】根据id修改指定商品库存====");
		msg("====【8】根据商品类别查询所有商品==");
		msg("====【9】查询指定价格区间内的商品==");
		msg("====【0】退出系统==================");
		msg("===================================");
		msg("请输入操作指令:");
		start();
	}

	private void start() {
		// TODO Auto-generated method stub
		sc = new Scanner(System.in);
		int a = sc.nextInt();
		switch (a) {
		case 1:
			xiuGaiMiMa();
			break;
		case 2:
			add();
			break;
		case 3:
			gd.show();
			break;
		case 4:
			showId();
			break;
		case 5:
			delete();
			break;
		case 6:
			xiuGaiJiage();
			break;
		case 7:
			xiuGaiKuCun();
			break;
		case 8:
			showKind();
			break;
		case 9:
			showPrice();
			break;
		case 0:
			exit();
			break;
		default:
			msg("请输入正确的操作指令!!!");
			break;
		}
		menu();

	}

	private void exit() {
		// TODO Auto-generated method stub
		sc = new Scanner(System.in);
		msg("是否确定退出?(Y/N)");
		String op = sc.next();
		if (op.equalsIgnoreCase("y")) {
			msg("谢谢使用,再见!");
			System.exit(1);
		}
	}

	private void showPrice() {
		// TODO Auto-generated method stub
		msg("请按此格式输入:价格1/价格2");
		sc = new Scanner(System.in);
		String s = sc.nextLine();
		String[] info = s.split("/");
		gd.showPrice(Double.parseDouble(info[0]), Double.parseDouble(info[1]));
	}

	private void showKind() {
		// TODO Auto-generated method stub
		msg("请输入要显示商品的类别");
		sc = new Scanner(System.in);
		String kind = sc.nextLine();
		gd.showKind(kind);
	}

	private void xiuGaiKuCun() {
		// TODO Auto-generated method stub
		msg("按一下格式输入:商品id/商品库存");
		sc = new Scanner(System.in);
		String s = sc.nextLine();
		String[] info = s.split("/");
		gd.xiuGaiKuCun(Integer.parseInt(info[0]), Integer.parseInt(info[1]));
	}

	private void xiuGaiJiage() {
		// TODO Auto-generated method stub
		msg("按一下格式输入:商品id/商品价格");
		sc = new Scanner(System.in);
		String s = sc.nextLine();
		String[] info = s.split("/");
		gd.xiuGaiJiage(Integer.parseInt(info[0]), Double.parseDouble(info[1]));
	}

	private void delete() {
		// TODO Auto-generated method stub
		sc = new Scanner(System.in);
		int id = sc.nextInt();
		gd.delete(id);
	}

	private void showId() {
		// TODO Auto-generated method stub
		msg("请输入商品所查询的商品id");
		sc = new Scanner(System.in);
		int id = sc.nextInt();
		if (gd.showid(id)) {

		} else {
			msg(id + "商品不存在");
		}
	}

	private void xiuGaiMiMa() {
		// TODO Auto-generated method stub
		msg("请输入密码");
		sc = new Scanner(System.in);
		int mima = sc.nextInt();
		a.xiuGaiMiMa(mima);
		msg("修改成功,请重新登录");
		dengLu();
	}

	private void add() {
		msg("按以下格式输入:商品id/商品名/类别名/单价/库存量/产地/计量单位");
		sc = new Scanner(System.in);
		String s = sc.nextLine();
		String[] info = s.split("/");
		if (gd.showid(Integer.parseInt(info[0]))) {
			System.out.println("该id商品已存在");
			return;
		}
		gd.add(new Goods(Integer.parseInt(info[0]), info[1], info[2], Double.parseDouble(info[3]),
				Integer.parseInt(info[4]), info[5], info[6]));
		msg("添加成功");

	}

	public void msg(Object obj) {
		System.out.println(obj);
	}

}

测试类(Test)

public class Test {
	public static void main(String[] args) {
		Client a=new Client();
		a.dengLu();
	}

}

运行截图

java的基础知识运用,一个简单的电商管理系统

总结

这个项目基本上运用到了大部分java基础的相关知识,要在做项目前必须有一个清晰的思路,脑海里必须要有一根线,把项目拆分成一个一个的小问题,就可以轻松解决了。

相关标签: java基础