java 仓库管理_Java仓库管理系统(一)
從小到大沒有寫日記的習(xí)慣,但本著互聯(lián)網(wǎng)開放,共享的原則,并且馬士兵老師曾說:當(dāng)你學(xué)會(huì)一些技能的時(shí)候,看到別人正被你會(huì)的東西所困擾,你應(yīng)該去幫助他。所以把倉庫管理系統(tǒng)的詳解記錄一下。說的可能不那么專業(yè),但基本都能聽懂。本人編程起步,有錯(cuò)誤請(qǐng)指出。
先介紹一下該系統(tǒng)主要用到的思想。
1.MVC框架:M(model) V(view) C(controller) 該框架把一個(gè)復(fù)雜的項(xiàng)目分離成一個(gè)個(gè)小部分。各個(gè)部分相互聯(lián)系,并且負(fù)責(zé)自己的職責(zé)。Model(模型),是程序的主體部分,主要包含業(yè)務(wù)數(shù)據(jù)和業(yè)務(wù)邏輯。View(視圖),是程序呈現(xiàn)給用戶的部分,是用戶和程序交互的接口。?Controller(控制器),Controller是用來處理用戶輸入數(shù)據(jù),已經(jīng)更新業(yè)務(wù)模型的部分。 但是這種框架會(huì)提高一個(gè)項(xiàng)目的復(fù)雜性,提高結(jié)構(gòu)的復(fù)雜度。但本項(xiàng)目不是很難,和復(fù)雜度也不高。所以我采用了MVC設(shè)計(jì)模式,在項(xiàng)目中我使用了一般的MVC分包結(jié)構(gòu) :
bean包——負(fù)責(zé)項(xiàng)目對(duì)象的bean結(jié)構(gòu) ?。JavaBean其實(shí)就一種規(guī)范,便于封裝和重用。
dao——負(fù)責(zé)數(shù)據(jù)庫操作,并使用面向接口,將主要的方法實(shí)現(xiàn)封裝成接口,方法去繼承接口從而實(shí)現(xiàn)功能 ?。
view——負(fù)責(zé)視圖和調(diào)用方法
util——負(fù)責(zé)數(shù)據(jù)庫的連接
2.面向接口編程:面向接口編程把方法的詳細(xì)實(shí)現(xiàn)封裝成接口,方法繼承接口然后調(diào)用方法,提高的程序的可讀性。我們可以只去關(guān)心這個(gè)接口應(yīng)該被誰使用。Java只能單繼承父類,而可以繼承多個(gè)接口。總之面向接口編程的好處可能一個(gè)小項(xiàng)目看不出來,而一個(gè)大的項(xiàng)目則可以看出它的價(jià)值,大家可以仔細(xì)學(xué)一下。
接下來我們從0開始講解一下這個(gè)項(xiàng)目的實(shí)現(xiàn),項(xiàng)目的功能分析的步驟自動(dòng)忽略···
我們先建立一個(gè)數(shù)據(jù)庫 表為goods,storage,users
接下來我們?cè)趗til中寫一個(gè)DB.java類實(shí)現(xiàn)數(shù)據(jù)庫的連接。該連接我使用properties文件,實(shí)現(xiàn)文件讀取連接數(shù)據(jù)庫的四大屬性,該實(shí)現(xiàn)方法的優(yōu)點(diǎn):這里我使用的是Mysql數(shù)據(jù)庫,假如有一天我們換一個(gè)access的數(shù)據(jù)庫,其驅(qū)動(dòng)器會(huì)發(fā)生變化,這是如果我們使用傳統(tǒng)的連接方法需要暫停程序修改,甚至引起程序錯(cuò)誤。
import java.awt.im.InputContext;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Properties;
public class DB {
static Properties props=null;
static{
try {
props=new Properties();
InputStream in=DB.class.getResourceAsStream("dbconfig.properties");
props.load(in);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//數(shù)據(jù)庫連接
public static Connection con;
public DB(){
try {
//加載驅(qū)動(dòng)
Class.forName(props.getProperty("Driver"));
//獲取連接
con=DriverManager.getConnection(props.getProperty("url"),props.getProperty("username"),props.getProperty("password"));
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//獲取連接
public static Connection getConnection(){
if(con == null){
new DB();
}
return con;
}
}
dbconfig.properties文件內(nèi)容
Driver=com.mysql.jdbc.Driver
username=root
password=root
url=jdbc:mysql://localhost:3306/Test
這樣就實(shí)現(xiàn)了數(shù)據(jù)庫的連接,并且效果更佳。
總結(jié)
以上是生活随笔為你收集整理的java 仓库管理_Java仓库管理系统(一)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kali linux 2.0 ssh,K
- 下一篇: [New Portal]Windows