既然是商品庫(kù)存系統(tǒng),那么最少有各種商品的單件信息,1:需要有商品的進(jìn)貨價(jià)格,賣出價(jià)格,剩余數(shù)量,每月的銷售數(shù)量,進(jìn)貨時(shí)間等,在對(duì)應(yīng)的數(shù)據(jù)庫(kù)表創(chuàng)建相應(yīng)的字段。2:商品管理就是對(duì)多種商品的管理,所以還要有各種商品的分類,比如煙酒類,飲料類,小吃類,將其分類好管理,同樣數(shù)據(jù)庫(kù)里面建立相對(duì)的數(shù)據(jù)表。具體需要根據(jù)自己需求來(lái)編寫(xiě)。3:界面的設(shè)計(jì),這里可分為登陸界面,其中一個(gè)是用戶登陸后查看的界面,和管理員登陸后查看的界面,用戶登錄只能查看對(duì)應(yīng)的商店的物品管理,并且能進(jìn)行修改自家商品。管理員登陸可查看所有的用戶的商店物品,及修改物品信息。而物品分類欄就可以用jQuery來(lái)實(shí)現(xiàn)局部的刷新界面。左邊為物品分類欄,右邊為選中物品類的信息。點(diǎn)擊右邊分類物品的某件物品,可跳轉(zhuǎn)到該類物品的單個(gè)信息,如第1點(diǎn)提到的。
成都創(chuàng)新互聯(lián)公司專注于企業(yè)成都營(yíng)銷網(wǎng)站建設(shè)、網(wǎng)站重做改版、射陽(yáng)網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5建站、商城建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為射陽(yáng)等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
package?c;
import?java.util.Scanner;
public?class?SuperMarket?{
static?Scanner?scan?=?new?Scanner(System.in);
public?static?String?str;
public?static?void?main(String[]?args)?{
showMsg();
while?(scan.hasNext())?{
switch?(scan.nextInt())?{
case?1:
commodityManage();
break;
case?2:
customerManage();
break;
case?3:
orderManage();
break;
case?4:
exitSystem();
break;
default:
System.out.println("輸入錯(cuò)誤,請(qǐng)重新輸入!");
break;
}
}
scan.close();
}
/**
?*?顯示信息
?*/
public?static?void?showMsg()?{
System.out.println("===================================");
System.out.println("\t超??市??庫(kù)??存??管??理??系??統(tǒng)\t");
System.out.println("===================================");
System.out.println("1、商品管理");
System.out.println("2、客戶管理");
System.out.println("3、訂單管理");
System.out.println("4、退出系統(tǒng)");
System.out.println("===================================");
System.out.println("請(qǐng)輸入您的選擇(1-4):");
}
/**
?*?選項(xiàng)?1、商品管理
?*/
public?static?void?commodityManage()?{
str?=?"商品管理";
showWelcom(str);
System.out.println("以上為商品管理的信息!\n是否繼續(xù)?(按1繼續(xù)/其他結(jié)束):");
exitOrShow(1);
}
/**
?*?選項(xiàng)?2、客戶管理
?*/
public?static?void?customerManage()?{
str?=?"客戶管理";
System.out.println("以上為客戶管理的信息!\n是否繼續(xù)?(按2繼續(xù)/其他結(jié)束):");
exitOrShow(2);
}
/**
?*?選項(xiàng)?3、訂單管理
?*/
public?static?void?orderManage()?{
str?=?"訂單管理";
System.out.println("以上為訂單管理的信息!\n是否繼續(xù)?(按3繼續(xù)/其他結(jié)束):");
exitOrShow(3);
}
/**
?*?選項(xiàng)?4、退出系統(tǒng)
?*/
public?static?void?exitSystem()?{
System.exit(0);
}
public?static?void?showWelcom(String?str)?{
System.out.println("歡迎進(jìn)入"+?str?+"模塊");
System.out.println("===================================");
}
public?static?void?exitOrShow(int?nextInt)?{
if?(scan.nextInt()?!=?nextInt)?{
exitSystem();
}?else?{
showMsg();
}
}
}
項(xiàng)目:完成一個(gè)電商系統(tǒng)的商品模塊功能,商品類包含以下屬性:商品ID, 商品名,類別名,單價(jià),庫(kù)存量,產(chǎn)地,計(jì)量單位等信息,要求實(shí)現(xiàn)商品管理功能以及管理員功能,具體如下:
1.管路員登錄(賬號(hào)密碼固定admin/admin)
2.修改管理員密碼
3.商品添加
4.商品列表
5.查詢指定id商品
6.根據(jù)商品id刪除商品
7.根據(jù)id修改商品價(jià)格
8.根據(jù)id修改指定商品庫(kù)存
9.根據(jù)商品類別查詢所有商品
10.查詢指定價(jià)格區(qū)間的商品信息
根據(jù)項(xiàng)目要求,我們首先分析題目,知道此項(xiàng)目至少四個(gè)類:管理員類、商品類、系統(tǒng)類、測(cè)試類。
由于我們決定對(duì)此系統(tǒng)進(jìn)行優(yōu)化,要求能夠?qū)?shù)據(jù)進(jìn)行保存,所以我們用流的相關(guān)知識(shí),將數(shù)據(jù)寫(xiě)入已經(jīng)創(chuàng)建好的文檔中,使其自動(dòng)讀寫(xiě),以便管理,三個(gè)文檔分別用于保存商品信息、id、user。
package com.company.dao;
import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class BaseDao {
// 數(shù)據(jù)庫(kù)驅(qū)動(dòng)
String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
//url
String url = "jdbc:sqlserver://數(shù)據(jù)庫(kù)ip:端口號(hào);databaseName=數(shù)據(jù)庫(kù)名;";
//用戶名
String uname = "數(shù)據(jù)庫(kù)用戶名";
//密碼
String pwd = "數(shù)據(jù)庫(kù)密碼";
/**
* 獲得連接對(duì)象
* @return
*/
protected Connection getCon(){
//返回的連接
Connection con = null;
try {
//載入驅(qū)動(dòng)
Class.forName(driver);
//得到連接
con = DriverManager.getConnection(url, uname, pwd);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
/**
* 關(guān)閉數(shù)據(jù)庫(kù)
* @param con
* @param stmt
* @param rs
*/
protected void closeDB(Connection con, Statement stmt, ResultSet rs){
if(rs != null){
try {
//關(guān)閉結(jié)果集
rs.close();
rs = null;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(stmt != null){
try {
//關(guān)閉語(yǔ)句對(duì)象
stmt.close();
stmt = null;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(con != null){
try {
//關(guān)閉連接對(duì)象
con.close();
con = null;
} catch (SQLException e) {
e.printStackTrace();
}
}
}
protected void closeDB(Connection con, PreparedStatement pstmt, ResultSet rs){
if(rs != null){
//關(guān)閉結(jié)果集
try {
rs.close();
rs = null;
} catch (SQLException e) {
e.printStackTrace();
}
}
if(pstmt != null){
try {
pstmt.close();
pstmt = null;
} catch (SQLException e) {
e.printStackTrace();
}
}
if(con != null){
try {
con.close();
con = null;
} catch (SQLException e) {
e.printStackTrace();
}
}
}
這個(gè)是我寫(xiě)的一個(gè)基本的連接sql2005數(shù)據(jù)庫(kù)的代碼,.! 不知道你能不能用,! 你看一下吧, 連接的時(shí)候需要sqljdbc.jar數(shù)據(jù)庫(kù)驅(qū)動(dòng),!
詳細(xì)代碼寫(xiě)出來(lái)很長(zhǎng),我寫(xiě)一個(gè)思路
1:前臺(tái)傳商品名稱,類別,價(jià)格等多個(gè)屬性信息
2:將這些信息放在map里面
3:迭代map,組成sql語(yǔ)句
String?where?=?"where?1=1";
//迭代map
最后得出的where條件就是 ?where 1=1 or name='xxx' ?or age=xx or xx=xx
就可以搜索到前臺(tái)需要的商品