tsy基于微信平臺的微識系統(tǒng)
tsy
項目介紹
基于微信平臺的微識系統(tǒng) 后臺訪問需要通過 127.0.0.1:8080/tsy 來訪問,不要使用 localhost:8080/tsy 訪問
微識系統(tǒng)是一款和微信公眾號結(jié)合起來的一款學(xué)習(xí)系統(tǒng)。該系統(tǒng)實現(xiàn) PC 端和手機微信端的交互,由后臺工作人員在 PC 端對資料操作以及微信公眾號常用的功能,比如向用戶推送資料,學(xué)習(xí)文檔等。同時,具備投票、簽到、網(wǎng)絡(luò)考研、IT 以及學(xué)習(xí)等各方面資源的搜索功能。
軟件架構(gòu)
軟件架構(gòu)說明
該系統(tǒng)采用 MyEclipse 作為開發(fā)工具進行系統(tǒng)的開發(fā)。MyEclipse 是在 Eclipse 的基礎(chǔ)上加上其他的插件開發(fā)構(gòu)成的性能強大的企業(yè)級集成開發(fā)環(huán)境。MyEclipse 主要用于 Java、JavaEE 以及移動應(yīng)用的開發(fā)。MyEclipse 擁有豐富的JavaEE 功能,并且支持 JavaEE 開發(fā)中可能用到的幾乎所有語言。利用 MyEclipse 進行 JavaEE 開發(fā)、發(fā)布等方面可以極大的提高工作效率[7]。因此利用 MyEclipse 作為開發(fā)基于微信平臺的微識系統(tǒng)的工具是完全可行的
參與貢獻
根據(jù)分析的業(yè)務(wù)流程,得出該系統(tǒng)目前需要完成的具體功能,具體功能如下: (1) 微信端 ① 關(guān)鍵字回復(fù)功能 用戶可以在微信公眾號里查找自己想要的資源的類型,找到類型后,然后查找想要資源的關(guān)鍵字,找到后,將關(guān)鍵字回復(fù)到微信公眾號中,即可收到微識官方回復(fù)的消息。 ② 智能聊天功能 用戶可以將微信公眾號視作一個“人”,然后和他聊天。 ③ 智能接口使用功能 用戶可以使用微信公眾號對外提供的城際公交查詢,天氣查詢,影視查詢等服務(wù),只需要回復(fù)指定的格式即可。 ④ 投票功能 用戶可以參與微識官方發(fā)起的投票,來表達出自己對微信公眾號的建議。 ⑤ 網(wǎng)絡(luò)資源搜索功能 用戶可以在公眾號里回復(fù)“搜索 java”這種格式的文字,即可獲得想要的網(wǎng)絡(luò)資源。 (2) 用戶PC端 ① 下載附件功能 用戶可以在PC端打開微識官網(wǎng)后,查看視頻所帶的附件,然后進行下載。 ② 視頻查看功能 用戶可以在PC端打開微識官網(wǎng)后,使用搜索功能查看想要看的視頻資源,然后進行觀看即可。 ③ 網(wǎng)絡(luò)資源搜索功能 用戶在登錄過后即可使用PC端自帶的網(wǎng)絡(luò)資源搜索功能,資源內(nèi)容多種多樣。 ④ 注冊/登錄功能 用戶在使用PC端的一些功能時,需要登錄才可以進行,因為還包含有注冊和登錄的功能。用戶可以注冊后,然后登錄,從而使用全部功能。 (3) PC后臺管理 ① 權(quán)限管理功能 管理員分為不同的身份權(quán)限,超級管理員可以對管理員進行菜單的分配和身份的變更操作。 ② 投票功能 管理員可以創(chuàng)建投票進行市場調(diào)研,并且可以查看投票結(jié)果。 ③ 圖文消息功能 管理員可以創(chuàng)建圖文消息,并發(fā)送給所有的用戶。 ④ 關(guān)鍵字回復(fù)功能 管理員可以添加新的關(guān)鍵字,如果關(guān)鍵字存在,則需要更換關(guān)鍵字,并且可以控制關(guān)鍵字的上下線。 ⑤ 智能聊天功能 管理員可以控制智能聊天功能的狀態(tài)。 ⑥ 文章功能 管理員可以創(chuàng)建新的文章進行發(fā)布,在創(chuàng)建新的文章前,需要判斷文章所屬的類型存在不存在,如果不存在則需要添加,如果存在則直接點擊進去添加文章即可。
普通用戶在微信端可以進行查看關(guān)鍵字,投票,簽到,網(wǎng)絡(luò)資源搜索,智能聊天,關(guān)鍵字回復(fù),智能接口搜索等操作,在PC端可以進行下載附件,發(fā)表留言,發(fā)表評論等操作。關(guān)鍵字部分包含有官方準(zhǔn)備好的一些資源,用戶可以在關(guān)鍵字里查找,如果找不到或者不合適,用戶可以使用搜索功能,格式為:“搜索 java”,不過微信端智能返回十條數(shù)據(jù),想要查看更多數(shù)據(jù),用戶可以登錄PC端注冊賬號,然后登錄進行網(wǎng)絡(luò)資源搜索。用戶功能結(jié)構(gòu)圖如圖2-1所示。
管理員登錄后臺管理系統(tǒng)后,可以針對投票,公告,文章,視頻,關(guān)鍵字,圖文消息,微信公眾號關(guān)注用戶和用戶在微信端發(fā)送的消息進行一些列操作。管理員同時也分為不同的管理員身份,分別擁有著不同的操作權(quán)限。管理員功能結(jié)構(gòu)圖如圖2-2所示。
本階段的目的是分析出設(shè)計軟件的結(jié)構(gòu)和系統(tǒng)的功能,以了解系統(tǒng)是怎樣實現(xiàn)問題的。根據(jù)分析結(jié)果決定系統(tǒng)分為哪些功能模塊,每個功能模塊實現(xiàn)什么樣的功能,由此對系統(tǒng)進行總體的設(shè)計。系統(tǒng)設(shè)計的主要目的是系統(tǒng)能實現(xiàn)所要求的功能。系統(tǒng)設(shè)計主要有兩個階段組成:系統(tǒng)設(shè)計和結(jié)構(gòu)設(shè)計。系統(tǒng)設(shè)計是確定實現(xiàn)系統(tǒng)的具體方案,結(jié)構(gòu)設(shè)計是確定系統(tǒng)的結(jié)構(gòu)。 模塊分解設(shè)計是結(jié)構(gòu)化設(shè)計的核心內(nèi)容。先設(shè)計系統(tǒng)的總體結(jié)構(gòu),再對系統(tǒng)的總體進行分解,分解為多個功能明確、獨立而且容易實現(xiàn)的模塊。通過模塊分解將把一個復(fù)雜的系統(tǒng)設(shè)計轉(zhuǎn)化為多個簡單的模塊設(shè)計,這是自上而下、逐層分解的設(shè)計思想。 基于微信平臺的微識系統(tǒng)也稱作為學(xué)習(xí)系統(tǒng),主要分為微信端,PC端,PC端后臺管理三大模塊,經(jīng)過詳細的劃分,三大模塊主要包含以下功能: 1)微信端 資源關(guān)鍵字查看:用戶關(guān)注微信公眾號后可以進行自己想要的資源的關(guān)鍵字的查看; 投票操作:用戶可以參與微識系統(tǒng)官方發(fā)起的投票; 簽到操作:用戶可以進行每天的簽到活動,方便管理員進行忠實用戶粉絲的選擇; 網(wǎng)絡(luò)資源搜索:用戶可以通過關(guān)鍵字進行網(wǎng)絡(luò)資源搜索來獲取自己想要的視頻學(xué)習(xí)資源; 微識官方文章查看:用戶可以閱讀和搜索微識官方發(fā)布的文章; 智能聊天:用戶可以和微識官方發(fā)起的機器人進行聊天; 天氣搜索:用戶可以隨時隨地進行某個城市的天氣狀況的查看; 公交車搜索:用戶可以查看某個城市的公交車運營狀況; 影視搜索:用戶可以查看最新的影視信息。 2)PC端 登錄/注冊:用戶可以進行自己的賬號的登錄和注冊; 微識官方文章查看:用戶可以閱讀和搜索微識官方發(fā)布的文章; 微識官方視頻查看:用戶可以欣賞微識官方推出的視頻資料; 網(wǎng)絡(luò)資源搜索:用戶可以通過關(guān)鍵字進行網(wǎng)絡(luò)資源搜索來獲取自己想要的視頻學(xué)習(xí)資源; 發(fā)表評價:用戶可以對文章進行文章評價; 發(fā)表留言:用戶可以進行留言方便微識官方進行改進; 下載附件:用戶可以下載視頻資源所攜帶的附件資源。 3)PC端后臺管理 文章管理:管理員可以添加,修改,查看和刪除文章; 視頻管理:管理員可以添加,修改,查看,刪除和審核視頻內(nèi)容; 關(guān)鍵字:管理員可以關(guān)鍵字的添加,上下線等操作; 圖文消息:管理員可以創(chuàng)建圖文信息,并進行發(fā)布; 公告管理:管理員可以操作公告的一系列信息,并進行上下線操作; 微信用戶管理:管理員可以對微信公眾號關(guān)注的用戶進行凍結(jié)和解凍操作; 微信信息查看:管理員可以查看微信公眾號關(guān)注的用戶發(fā)來的消息。
src文件夾:放置的是實現(xiàn)系統(tǒng)業(yè)務(wù)邏輯的Java代碼; com.ssm.interceptor存放的是攔截器,負責(zé)攔截ajax請求并作出處理; com.ssm.tsy.bean存放的是本地數(shù)據(jù)庫對象實體類; com.ssm.tsy.bean.wechat存放的是微信消息對象實體類; com.ssm.tsy.beanmapper存放的是SQL文件,即數(shù)據(jù)庫執(zhí)行語句; com.ssm.tsy.controller存放的是控制類,負責(zé)和頁面的交互; com.ssm.tsy.dao存放的是SQL接口,和SQL文件你的執(zhí)行語句ID同名; com.ssm.tsy.manager存放的是Manager,Https協(xié)議通過X509TrustManager實現(xiàn)接口自身創(chuàng)建的證書; com.ssm.tsy.object存放的是流數(shù)據(jù)處理類,負責(zé)數(shù)據(jù)的接收和處理; com.ssm.tsy.service存放的是服務(wù)類接口; com.ssm.tsy.service.impl存放的是服務(wù)類實現(xiàn)類; com.ssm.tsy.util存放的是一些時間,判斷,轉(zhuǎn)換等的工具類; com.ssm.util存放的是框架用到的一些工具類,比如說過濾器,異常處理機制等; com.wechat.service存放的是微信端用到的一些接口調(diào)用。 jdbc.properties:連接數(shù)據(jù)庫的相關(guān)配置,包括數(shù)據(jù)庫驅(qū)動、連接數(shù)據(jù)庫的帳號和密碼、數(shù)據(jù)庫的連接地址、數(shù)據(jù)庫的初始連接數(shù)和最大、最小連接數(shù)以及最大的活動數(shù); log4j.properties:系統(tǒng)的日志配置文件; spring-mvc.xml:系統(tǒng)文件的后綴配置信息; web.xml:是系統(tǒng)的部署配置文件,里面定義加載的配置文件和一系列相關(guān)的過濾器并且定制初始化參數(shù)等; spring-mybatis.xml:系統(tǒng)數(shù)據(jù)庫的后臺配置信息; spring.xml:系統(tǒng)業(yè)務(wù)處理的配置信息。
(1) 實現(xiàn)微信接口 因為此系統(tǒng)是基于微信公眾號開發(fā)的系統(tǒng)[8],所以需要實現(xiàn)微信端的接口配置。如圖4-21所示。
圖4-21 系統(tǒng)微信端配置信息
然后在后臺管理系統(tǒng)配置微信公眾號信息,如圖4-22所示。
圖4-22 后臺管理系統(tǒng)配置信息
(2) 自定義菜單 在PC端后臺管理實現(xiàn)自定義菜單,然后通過微信接口發(fā)布,如圖4-23所示。
圖4-23 后臺管理系統(tǒng)自定義菜單
(3) 爬蟲 利用所學(xué)知識實現(xiàn)網(wǎng)絡(luò)百度云爬蟲技術(shù),分享免費資源給所有用戶[16],如圖4-24所示。
圖4-24 后臺管理系統(tǒng)爬蟲
(4) 圖文消息 在本地實現(xiàn)圖文消息管理,然后通過微信接口實現(xiàn)發(fā)送給所有用戶,如圖4-25所示。
圖4-25 后臺管理系統(tǒng)圖文消息
按鈕設(shè)計如圖5-1所示。微信端知識界面,如圖5-2所示。
圖5-1 微信端按鈕設(shè)計圖 5-2 微信端知識界面設(shè)計
微信端知識搜索界面,如圖5-3所示。微信端關(guān)于界面,如圖5-4所示。
圖5-3 微信端知識搜索界面設(shè)計 5-4 微信端系統(tǒng)詳情介紹界面設(shè)計
微信端內(nèi)容查看界面,如圖5-5所示。微信端投票界面,如圖5-6所示。
圖5-5 微信端內(nèi)容查看界面設(shè)計 5-6 微信端用戶參與投票界面設(shè)計
首頁門戶如圖5-7所示。
圖5-7 PC端首頁設(shè)計
圖5-8是文章界面,用戶可以點擊菜單,跳轉(zhuǎn)到文章展示界面,如果該內(nèi)容已上線,會出現(xiàn)如圖5-8的界面,如果該內(nèi)容沒有上線,會出現(xiàn)如圖5-9的界面,用戶可以瀏覽文章并進行評價和評價回復(fù),并查看所有的用戶的評價,評價時,用戶可以選擇此文章的星數(shù)。針對同一篇文章,如果已經(jīng)選擇過星數(shù),則不能再評價星數(shù)。
圖5-8 PC端已上線文章界面
圖5-9 PC端未上線文章界面
評價界面如圖5-10,用戶將頁面滾動到最下方即可看到。
圖5-11是所有的視頻界面,用戶可以在這看到官方發(fā)布的所有視頻,點擊進去后,會進入播放界面進行播放,并且還可以下載附件和瀏覽和該視頻相關(guān)的視頻,也可以點擊播放。
圖5-11 PC端官方上線視頻界面
圖5-12 PC端官方上線視頻播放界面
圖5-13 PC端官方上線視頻播放界面
圖5-14 PC端官方上線視頻附件下載界面
PC端用戶可以使用搜索功能搜索微識官方的知識材料,如圖5-15所示。
圖5-15 PC端微識官方知識搜索界面界面
PC端用戶可以使用搜索功能搜索網(wǎng)絡(luò)知識的百度云鏈接[15],不過,需要用戶登錄才可以進行搜索,如果沒有賬號的用戶,可以通過注冊來獲得賬號。網(wǎng)絡(luò)知識搜索如圖5-16所示。
圖5-16 PC端微識官方知識搜索界面界面
用戶可以查看自己的信息,如圖5-17所示。
圖5-17 PC端個人信息界面
登錄注冊界面,如圖5-18所示。
圖5-18 PC端用戶登錄注冊界面
權(quán)限管理 管理員登錄之后,如果是超級管理員,則具備分配權(quán)限的功能,管理員點擊右上角列表權(quán)限,進入權(quán)限菜單頁面,管理員可以在這個頁面根據(jù)菜單級別和菜單名稱進行模糊查詢。如圖5-19所示。 待上傳 圖5-19 系統(tǒng)后臺管理權(quán)限管理 (2) 添加權(quán)限菜單 管理員可以通過點擊添加菜單按鈕進入添加頁面,然后選擇添加的是一級菜單還是二級菜單,默認的是一級菜單。如果選擇二級菜單,則需要添加鏈接,并指明所屬一級菜單是哪個。如圖5-20所示。 待上傳 圖5-20 系統(tǒng)后臺管理權(quán)限菜單添加界面 (3) 權(quán)限分配 管理員可以點擊分配權(quán)限進去權(quán)限菜單分配界面,如圖5-21所示。管理員可以在這個界面對用戶進行菜單分配。 待上傳 圖5-21 系統(tǒng)后臺管理權(quán)限菜單分配界面 (4) 自定義菜單 管理員可以在自定義菜單項中對微信公眾號的菜單進行編輯和發(fā)布,如圖5-22所示。用戶在左側(cè)手機部分進行要編輯的菜單選擇,然后在右側(cè)會顯示出菜單目前的信息,然后進行編輯,編輯完成后,管理員需要進行發(fā)布操作。發(fā)布完成之后,用戶即可在微信端看到效果。
圖5-22 系統(tǒng)后臺管理自定義菜單界面
(5) 微信用戶管理 管理員可以點擊微信用戶管理查看微信公眾號關(guān)注的情況,并進行凍結(jié)操作。如圖5-23所示。
圖5-23 系統(tǒng)后臺管理微信用戶管理界面
(6) 微信投票管理 管理員可以點擊投票管理查看投票的信息,如圖5-24所示。管理員可以在這個界面查看此次投票中每道題的投票情況。并且點擊新建投票可以重新創(chuàng)建投票,如果之前有正在編輯并且沒有保存的投票,系統(tǒng)會提示是否編輯這次投票,否則則直接跳轉(zhuǎn)到新添投票界面。
圖5-24 系統(tǒng)后臺管理微信投票管理界面
