牛玉霞++任偉
摘要:“企業(yè)產(chǎn)品展示與新聞發(fā)布系統(tǒng)”可以通過后臺上傳企業(yè)產(chǎn)品、發(fā)布企業(yè)新聞,通過前臺頁面查看、瀏覽。其中管理員可以設置產(chǎn)品與新聞分類,瀏覽、添加、刪除、修改企業(yè)的產(chǎn)品與新聞詳情;普通用戶可以瀏覽產(chǎn)品信息和企業(yè)新聞。本文詳細闡述了系統(tǒng)的數(shù)據(jù)庫設計、功能模塊設計以及系統(tǒng)核心功能的實現(xiàn),并且闡述了三層架構(gòu)的設計思想。
關(guān)鍵詞:企業(yè)產(chǎn)品展示與新聞發(fā)布 功能設計 編碼實現(xiàn)
中圖分類號:TP311.13 文獻標識碼:A 文章編號:1007-9416(2016)12-0159-02
本系統(tǒng)的用戶分為管理員和普通用戶,普通用戶可以瀏覽系統(tǒng)信息,管理員可以設置產(chǎn)品與新聞分類,瀏覽、添加、刪除、修改企業(yè)的產(chǎn)品與新聞詳情。本系統(tǒng)基于Microsoft Visual Studio開發(fā)平臺和SQL Server技術(shù),采用三層架構(gòu),系高效率、高集成、高安全性的企業(yè)信息管理系統(tǒng)。
1 系統(tǒng)開發(fā)環(huán)境及主要技術(shù)
1.1 開發(fā)環(huán)境
本系統(tǒng)開發(fā)使用的操作系統(tǒng)為 Windows7,使用的開發(fā)工具為 Microsoft Visual Studio 2010,以Microsoft SQL server 2008 為后臺數(shù)據(jù)庫,使用Adobe Photoshop CS3 進行素材加工,使用 Microsoft Office Visio 2003 進行UML 建模。
1.2 系統(tǒng)的技術(shù)應用
本系統(tǒng)開發(fā)的主要技術(shù)如下:
(1)運用微軟公司的ASP.NET技術(shù);
(2)采用三層架構(gòu),實現(xiàn)對系統(tǒng)框架的搭建,將整個業(yè)務應用劃分為:表現(xiàn)層 (UI)、業(yè)務邏輯層(BLL)、數(shù)據(jù)訪問層 (DAL),使系統(tǒng)具有 “高內(nèi)聚,低耦合”的特征,更利于系統(tǒng)的開發(fā)與維護;
(3)使用OOP思想,實現(xiàn)數(shù)據(jù)的封裝,類的繼承和多態(tài),程序更加人性化。
(4)使用ADO.NET技術(shù)實現(xiàn)數(shù)據(jù)庫信息操作,使系統(tǒng)對數(shù)據(jù)庫的處理更高效、更安全。
(5)采用工程化的開發(fā)方法,使系統(tǒng)更穩(wěn)定,代碼更規(guī)范,系統(tǒng)更便于維護。
2 系統(tǒng)設計
2.1 數(shù)據(jù)庫設計
本系統(tǒng)使用Microsoft SQL server 2008作為數(shù)據(jù)庫的設計與開發(fā)工具,主要數(shù)據(jù)表有以下幾個:
(1)新聞信息表(News_Info):此表存放新聞基本信息,其結(jié)構(gòu)如表1所示。
(2)產(chǎn)品信息表(Product_Info):此表存放產(chǎn)品基本信息,其結(jié)構(gòu)如表2所示。
(3)產(chǎn)品類別表(ProductType):此表存放產(chǎn)品分類信息,其結(jié)構(gòu)如表3所示。
2.2 功能模塊設計
本系統(tǒng)主要功能模塊設計如圖1所示。
2.3 功能需求分析
2.3.1 用戶管理
根據(jù)系統(tǒng)的操作權(quán)限不同,將系統(tǒng)的使用用戶分為普通用戶和管理員。普通用戶無需注冊,可以瀏覽系統(tǒng)中發(fā)布的產(chǎn)品和新聞信息;管理員負責系統(tǒng)的日常維護,通過身份驗證后可以對產(chǎn)品和新聞進行瀏覽和編輯。
2.3.2 產(chǎn)品管理
管理員可以通過系統(tǒng)后臺對產(chǎn)品進行添加、刪除、修改、查詢。
(1)添加產(chǎn)品:即在系統(tǒng)中錄入新產(chǎn)品,填寫產(chǎn)品信息時作非空判斷,如果出現(xiàn)重復信息,則給出提示。添加成功之后,以對話框的形式顯示添加結(jié)果。
(2)刪除產(chǎn)品:企業(yè)有些停產(chǎn)或脫銷產(chǎn)品,從系統(tǒng)展示位中“下架”,由管理員在系統(tǒng)后臺通過刪除產(chǎn)品操作實現(xiàn)。
(3)修改產(chǎn)品:管理員在系統(tǒng)后臺可以編輯產(chǎn)品,實現(xiàn)對產(chǎn)品屬性的修改,比如產(chǎn)品圖片、產(chǎn)品名稱等。
(4)查詢產(chǎn)品:系統(tǒng)前臺和后臺均支持按產(chǎn)品名稱或類別進行查詢和瀏覽。
新聞管理與產(chǎn)品管理功能需求類似,在此不再贅述。
3 系統(tǒng)功能實現(xiàn)
限于篇幅,本文選取了部分核心功能代碼。
3.1 管理員用戶登錄
管理員在后臺登錄頁面輸入指定用戶名和密碼,進行身份驗證,具體實現(xiàn)如下:
protected void btnLogin_Click(object sender, EventArgs e)
{
if (txtUserName.Text == "admin" && txtPassword.Text == "admin")
{
Response.Redirect("AdminIndex.aspx");
}
else
{
ShowMessage(this,"賬號或密碼錯誤!");
}
}
3.2 產(chǎn)品與新聞管理
產(chǎn)品和新聞的基本信息存放在數(shù)據(jù)庫中,通過對數(shù)據(jù)表的操作,來實現(xiàn)產(chǎn)品和新聞的增、刪、改、查。在.NET頁面中訪問數(shù)據(jù)表一般有三個步驟:一是連接數(shù)據(jù)庫;二是對數(shù)據(jù)表執(zhí)行相關(guān)操作;三是關(guān)閉連接。本文以“新增”新聞功能代碼為例,來闡述操作數(shù)據(jù)表。數(shù)據(jù)訪問與業(yè)務處理代碼如下:
private static string connString =
ConfigurationManager.ConnectionStrings["DBConnectionString"].ConnectionString;
public static SqlDataReader RunProcedure(string storedProcName, IDataParameter[] parameters)
{
using (SqlConnection connection = new SqlConnection(connString))
{
SqlDataReader returnReader;
connection.Open();
SqlCommand command = BuildQueryCommand(connection, storedProcName, parameters);
command.CommandType = CommandType.StoredProcedure;
returnReader = command.ExecuteReader(CommandBehavior.CloseConnection);
return returnReader;
}
}
public int AddNews(NewsModel model)
{
int rowsAffected;
SqlParameter[] parameters = {
new SqlParameter("@newsTitle", SqlDbType.NVarChar,50),
new SqlParameter("@newsPic", SqlDbType.NVarChar,4),
new SqlParameter("@newsContent", SqlDbType.Text,500),
new SqlParameter("@newsDate", SqlDbType.NVarChar,50),
new SqlParameter("@newsLink", SqlDbType.NVarChar,500),
};
parameters[0].Value = model.NewsTitle;
parameters[1].Value = model.NewsPic;
parameters[2].Value = model.NewsCon;
parameters[3].Value = model.NewsDate;
parameters[4].Value = model.NewsLink;
DBHelperSQL.RunProcedure("NewsAdd", parameters, out rowsAffected);
return rowsAffected;
}
表層代碼如下:
protected void btnSubmit_Click(object sender, EventArgs e)
{
NewsModel model = new NewsModel();
model.NewsTitle = txtNewsTitle.Text;
model.NewsDate = txtNewsDate.Text;
model.NewsLink = txtLink.Text;
model.NewsCon = txtContent.Text;
int i = nb.AddNews(model);
if (i > 0)
{
ShowAndRedirect(this, "保存成功", "NewsList.aspx");
}
else
{
Response.Redirect("");
}
}
4 結(jié)語
該系統(tǒng)的功能設計是在充分調(diào)研的基礎(chǔ)上形成的,其功能實現(xiàn)采用了分層處理,運行穩(wěn)定,界面友好,操作簡單。對各類企業(yè)創(chuàng)建門戶網(wǎng)站有一定的參考價值。
參考文獻
[1]張海藩.軟件工程導論[M].清華大學出版社,2013.
[2]啟明工作室.MIS系統(tǒng)開發(fā)與應用(C#+SQL Server 版)[M].人民郵電出版社,2009.