【摘 要】Struts體系結(jié)構(gòu)實現(xiàn)了MVC設(shè)計模式的概念,它將Model、View和Controller分別映射到Web應用中的組件。本文闡述了利用Struts框架實現(xiàn)信息發(fā)布系統(tǒng)的結(jié)構(gòu)設(shè)計和功能設(shè)計的過程,并給出了struts在信息發(fā)布系統(tǒng)中的關(guān)鍵代碼。
【關(guān)鍵詞】信息發(fā)布 Struts MVC
【中圖分類號】TP399 【文獻標識碼】A 【文章編號】1674-4810(2011)10-0036-01
一 引言
信息發(fā)布系統(tǒng)是一個由人、計算機等組成的能進行信息的發(fā)布、傳遞、存儲、加工和使用的系統(tǒng)。采用信息發(fā)布系統(tǒng)不僅能夠及時全面地提供信息和數(shù)據(jù),簡化信息收集發(fā)布工作,對不同的管理層次提出不同的報告,還能根據(jù)過去的數(shù)據(jù)預測未來的情況。本文將論述如何采用基于Struts框架技術(shù)構(gòu)建信息發(fā)布系統(tǒng)的方法。
二 信息發(fā)布系統(tǒng)功能
信息發(fā)布系統(tǒng)是將網(wǎng)頁上的某些需要經(jīng)常變動的信息,類似新聞、新產(chǎn)品發(fā)布和業(yè)界動態(tài)等更新信息集中管理,并通過信息的某些共性進行分類,最后系統(tǒng)化、標準化發(fā)布到網(wǎng)站上的一種網(wǎng)站應用程序。本文所設(shè)計的信息發(fā)布系統(tǒng)主要包括系統(tǒng)注冊、系統(tǒng)管理、用戶管理、信息編輯發(fā)布、信息類別管理等。
信息發(fā)布系統(tǒng)是為用戶提供后臺發(fā)布信息的各種功能。本文所設(shè)計的系統(tǒng)提供了盡可能豐富的功能模塊,來減輕管理員的編程壓力。由于網(wǎng)絡(luò)管理員的工作主要是維護網(wǎng)絡(luò)和軟件的正常運行,一般不會直接管理網(wǎng)站內(nèi)容,因此,網(wǎng)站信息發(fā)布系統(tǒng)允許管理員針對每個欄目授權(quán)管理員進行管理與維護,減輕管理員的工作量,并將工作量合理分配到“信息源”處。系統(tǒng)最終實現(xiàn)的主要功能如下:(1)管理員部分。包括管理員對系統(tǒng)信息的添加、刪除和修改操作,以及其他管理員權(quán)限分配。(2)用戶管理部分。包括管理員對普通用戶的增加、刪除和修改操作,以及所能涉及的權(quán)限范圍。(3)信息發(fā)布管理部分。該部分主要對其他用戶輸入的信息進行編輯、添加、修改、刪除以及審核操作。(4)類別管理部分。主要是對類別的增加修改。
三 Struts框架在信息發(fā)布中的應用
1.信息發(fā)布實現(xiàn)的功能
用戶成功登錄后便可以進入管理后臺進行信息的增加、修改、刪除操作,普通用戶只能管理自己的信息。具體流程如下:編寫信息→提交→對信息的增刪、改查→待審核→審核通過即可發(fā)布。
2.設(shè)計過程
構(gòu)建struts用于傳遞參數(shù)的實體bean為:Article Action Form.java。具體代碼如下:
public class Article Action Form extends Action Form
private String action;private String userId;//省略類似代碼.
public String get UserId() { return userId;}
public void set UserId(String userId) { this.userId = userId;}
public void set Action(String action) { this.action = action;}
public String get Action () { return Action;}
//省略類似代碼
添加信息
if (forward equals Ignore Case(“save”)) {
article Form set UserId( (String) session.get Attribute (“userId”));
String content = article Form.get Article_text();
String article_shoft = article Form.get Article_shoft();
content = content.replace All(“\”,“”);
article_shoft = article_shoft.replace All(“\”,““); /
article Form.set Article_text(content);
article Form.set Article_shoft(article_shoft);
if (dao.save(article Form)) {request.set Attribute(“message”,“添加成功!”);}
else { request.set Attribute(“message”,“添加失敗!”);}
return (action Mapping.find Forward(“addArticle”));}
//信息保存
public boolean save(Article Action Form article) {
Connection con = 1;
Prepared Statement ps = 1;
Encoding encoder = new Encoding();
db = new Db Connection();
try {con = db.get Connection();
con.set Auto Commit(1);
ps=con.prepareStatement(\"insertintoarticle(article_title,article_text,article_time,author,“+” article_class,userId,article_shoft) VALUES(?,?,?,?,?,?,?)\");
ps.set String(1, encoder.cn2uni(article.get Article_title()));
ps.set String(2, encoder.cn2uni(article.get Article_text()));
//省略部分代碼
}catch (SQL Exception ex1) {System.err.println(“保存數(shù)據(jù)錯誤:” + ex1.to String());}finally { //省略部分代碼}
return 1;}
四 小結(jié)
Struts是一種基于MVC經(jīng)典設(shè)計模式的開放源代碼的應用框架,也是目前Web開發(fā)中比較成熟的一種框架。本文利用Struts進行信息發(fā)布系統(tǒng)的開發(fā),Struts為Web開發(fā)提供具有高可配置性的MVC開發(fā)模式。
參考文獻
[1]James HolmesMcGraw. Struts: The Complete Reference[M]. Hill/Osborne,2004
〔責任編輯:王以富〕