康梅娟
摘 ?要:為了給攝影愛好者提供一個在線交流信息的平臺,該文基于模塊化思想設計并實現了基于SSM的攝影愛好者論壇。該文主要分析了攝影愛好者論壇的設計需求,詳細介紹了此系統的功能模塊設計、數據庫設計和系統功能的實現。攝影愛好者可以利用該論壇學習攝影知識,交流攝影經驗,分享攝影照片。
關鍵詞:SSM ?攝影 ?論壇
中圖分類號:TP311 ? 文獻標識碼:A 文章編號:1672-3791(2019)11(a)-0006-02
近年來,隨著科學技術的進步和社會經濟的發展,人們對于生活品質的要求逐漸提升,喜歡攝影的人也越來越多。現如今隨著手機的普及,手機拍攝的照片質量越來越高,讓攝影拍照變得更加方便快捷。攝影可以留住生活中美好的記憶,為了給攝影愛好者提供一個溝通思想、交流經驗、分享照片的平臺,該文設計并實現了基于SSM的攝影愛好者論壇。
1 ?系統開發相關技術
JSP的英文全稱是Java Server Pages,它是一種開發動態網頁的技術。它可以使用JSP標簽在HTML文檔中插入Java代碼。使用JSP技術開發的Web應用程序是跨平臺的,既能在Linux操作系統上運行,也能在其他操作系統上運行。
SSM框架是由Spring、SpringMVC和MyBatis這3個開源框架整合而成,常被用作數據源比較簡單的Web項目的框架。Spring框架創建的目的是為了解決企業應用程序開發的復雜性。分層架構的思想是框架的主要優勢之一,分層架構允許設計者選擇使用哪一個組件,還可以為開發J2EE應用程序提供集成的框架。SpringMVC是SpringFrameWork的后續產品之一,已經融合在SpringWebFlow里面。Spring框架為構建Web應用程序提供了全功能MVC模塊。MyBatis是對Java數據庫連接jdbc的封裝,有了它的支持,數據庫底層操作變得簡單透明。MyBatis的操作都是圍繞一個sqlSessionFactory實例展開的。
該系統是基于SSM框架開發的論壇,采用JSP技術實現系統的動態功能,使用Eclipse作為系統的開發環境,用Tomcat架設Web服務器,后臺數據庫采用MySQL實現。
2 ?系統設計與實現
2.1 系統功能模塊設計
該系統功能主要分為兩大模塊:前臺用戶模塊和后臺管理員模塊,系統的基本功能具體設計如下。
(1)前臺用戶模塊實現的功能:瀏覽者可以查看帖子、搜索帖子、查看通知公告、瀏覽攝影技巧和照片分享欄目下的內容;如果要發布帖子,瀏覽者需要注冊成為網站的會員,會員登錄以后可以對攝影信息進行討論、點贊、腳踩、分享以及舉報,可以在個人中心修改個人信息,可以發布帖子、對自己發布的帖子進行管理。
(2)后臺管理員模塊實現的功能:管理員登錄以后可以對用戶信息、帖子信息、通知公告信息等進行管理,可以查看和刪除會員信息、修改會員的密碼,可以查看、搜索、刪除帖子,可以查看、添加、修改、刪除通知公告,可以對用戶舉報的攝影帖子信息進行審核。
2.2 數據庫設計
數據庫設計在動態網站的設計中占有非常重要的地位,數據庫結構設計的好壞會直接影響到應用程序的運行效率。合理的數據庫結構設計能夠提高數據讀取與存儲的效率,能夠保證數據的一致性和完整性。該系統的數據庫使用MySQL來設計和實現。
該系統共有6個數據表,分別是用戶表、攝影帖子表、被舉報帖子表、用戶評價表、帖子討論表、通知公告表。
(1)用戶表主要用來存放用戶編號、用戶名、用戶密碼、用戶注冊郵箱、用戶注冊時間等信息。
(2)攝影帖子表主要用來存放帖子的編號、帖子的標題、帖子的內容、用戶編號、點贊的數目、評論的數目、置頂優先級、創作時間等信息。
(3)被舉報帖子表主要用來存放黑名單編號、被舉報的帖子編號、舉報人的編號、舉報的原因、管理員處理情況、舉報時間等信息。
(4)用戶評價表主要用來存放點贊編號、點贊者的用戶編號、被點贊的帖子編號等信息。
(5)帖子討論表主要用來存放該條評論帖子的編號、該條評論帖子的內容、被評論帖子的編號、評論者的用戶編號,該評論創建的時間等信息。
(6)通知公告表主要用來存放通知公告的編號、通知公告的標題、通知公告的內容,創建通知公告的時間等信息。
2.3 系統功能的實現
該系統采用3層架構模式,對表現層、業務邏輯層和數據訪問層進行了有效分離,實現了應用程序的低耦合和高內聚,提高了應用程序的執行效率。表現層是指展現給用戶的應用程序的界面。業務邏輯層是指針對具體問題的操作,或者說是對數據層的操作,包括對數據業務邏輯進行處理。數據訪問層用來對數據庫進行直接操作,對數據庫中的數據進行查找、添加、修改、和刪除等。
該系統使用Spring JDBC進行數據庫的訪問,實現了數據訪問層;使用Spring MVC進行前后端的分離,有了更清晰的業務邏輯;使用JSP作為前端的展示頁面,實現了表現層。
系統功能的實現主要表現在數據訪問層對數據庫中數據的各種操作上。下面分別以發布帖子、搜索帖子功能為例,說明系統功能的實現。
(1)發布帖子功能是攝影愛好者論壇的一個重要功能,要想發布帖子,瀏覽者必須先注冊為網站的會員,會員登錄以后才能發布帖子。
實現發布帖子功能的主要代碼如下所示。
@Override
public int insertBlog(String tieziName, String tieziContent, int huiyuanid)
{
ChBlog tiezi = new ChBlog();
tiezi.setBlogname(tieziName);
tiezi.setBlogcontent(tieziContent);
tiezi.setUserid(huiyuanid);
tiezi.setStar(0);
int insert_teizi=chBlogMapper.insertSelective(tiezi);
return insert_teizi;
}
(2)搜索帖子功能是整個系統的核心功能之一,也是用戶使用攝影愛好者論壇的好助手,用戶可以輸入關鍵詞搜索自己需要的帖子。
實現搜索帖子功能的主要代碼如下所示。
@Override
public SearchResult
{
String URL=BLOGCORE;
//創建查詢對象
SolrQuery myquery=new SolrQuery();
//設置查詢條件
myquery.setQuery(chaxuntiaojian);
//設置分頁
myquery.setStart((yeshu-1)*hangshu);
myquery.setRows(hangshu);
//設置默認搜索域
myquery.set("df","blog_keywords");
//執行查詢
SearchResult
//計算查詢結果的總頁數
long jiluNum=findOutcome.getRecordCount();
long yeShu=jiluNum / hangshu;
if (jiluNum%hangshu > 0)
{
yeShu++;
}
findOutcome.setPageCount(yeShu);
findOutcome.setCurPage(yeshu);
return findOutcome;
}
3 ?結語
基于SSM的攝影愛好者論壇具有美觀、友好的用戶界面,操作簡單,在功能方面也較為全面。攝影愛好者通過本論壇可以分享攝影照片,學習攝影技巧。與其他同類平臺相比,該平臺在開發上采用了SSM框架,降低了開發的復雜度,提高了代碼的復用率。該文先介紹了系統開發過程中所用到的技術,然后介紹了系統功能模塊設計、數據庫設計,最后完成了系統功能的實現,對構架基于SSM的類似系統具有一定的參考意義。
參考文獻
[1] 陳圣楠.基于SSM框架的信息系統全生命周期管理平臺的設計與開發[J].信息技術與信息化,2019(6):79-81.
[2] 馬炳周.基于SSM的高校知識分享系統的設計與實現[J].山東工業技術,2019(20):189.
[3] 鄭逸凡.基于SSM框架的在線教學系統的設計[J].長沙大學學報,2019(2):41-44.
[4] 王先清.基于SSM架構博客平臺設計與實現[J].電腦知識與技術,2018(19):107-109.
[5] 向露.基于SSM的智能停車場管理系統的設計與實現[J].電子設計工程,2018(13):24-27,32.