freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于web的在線實時通訊系統(tǒng)的設計與實現(xiàn)畢業(yè)設計-資料下載頁

2025-02-26 10:53本頁面

【導讀】越來越多的網(wǎng)民的青睞。目前,出現(xiàn)了很多非常不錯的聊天工具,其中應用比較廣。泛的有Netmeeting、騰訊QQ、MSN-Messager等。聊天通訊系統(tǒng)的誕生拉進了人們。的距離,溝通交流更加方便了。一個網(wǎng)絡聊天客戶程序兩個方面。前者通過Socket套接字建立服務器,服務器能讀。取、轉(zhuǎn)發(fā)客戶端發(fā)來信息,并能刷新用戶列表。其中用到了局域網(wǎng)通信機制的原理,通過直接繼承。Thread類來建立多線程。開發(fā)中利用了計算機網(wǎng)絡編程的基本理論知識,如TCP/IP. 協(xié)議、客戶端/服務器端模式、網(wǎng)絡編程的設計方法等。系統(tǒng)的目標就是能夠?qū)崿F(xiàn)在線實時通訊,系統(tǒng)采用MyEclipse為基本開發(fā)環(huán)境,使用SSH框架以及Ajax等進行編寫,首先可在短時間內(nèi)建立系統(tǒng)應用原型,然后,對初始原型系統(tǒng)進行不斷修正和改進,直到形成可行系統(tǒng)。系統(tǒng)具有良好的程序結(jié)

  

【正文】 基礎(chǔ)類中沒有實現(xiàn),則只需在繼承基礎(chǔ)類的前提下添加上自己需要的方法即可,如此大大提高了編碼效率。 DAO 層的類圖如圖 47 所示,其設計方案如圖 48 所示,遵循如上所述的實現(xiàn)原理,所有的 DAO 類皆實現(xiàn)了基礎(chǔ)類。 I U s e r D a oI F r ie n d D a oI M e s s a g e D a oU s e r D a oF r ie n d D a oM e s s a g e D a oI B a s e D a oSi m p le H ibe r n a t e D a o H ibe r n a t e D a o Su p p o r t 圖 48 DAO 層之間的關(guān)系 如圖 48 中所描 繪的,所有的 dao 類都繼承了 SimpleHibernateDao 以及實現(xiàn)了 IBaseDao 基礎(chǔ) dao 類,使得其擴展性更好,方便以后換框架。 Service 層設計 業(yè)務邏輯層的主要目的即完成對系統(tǒng)功能的具體實現(xiàn),在該層通過調(diào)用 DAO 層( 通過接口調(diào)用),完成對數(shù)據(jù)的操作,同時實現(xiàn)系統(tǒng)中需要實現(xiàn)的各項功能。 該層的設計原則同 DAO 層 相似 ,首先建立接口層,該層聲明在該層需要實現(xiàn)的 27 信息科學與技術(shù)學院學士學位論文 功能方法;其次就是接口實現(xiàn)層,在該層調(diào)用 DAO 層的相關(guān)方法同時實現(xiàn)業(yè)務接口層對應的接口完成業(yè)務功能的實現(xiàn)。系統(tǒng)中業(yè)務邏輯組件和 DAO 組件及數(shù)據(jù)之間的依賴關(guān)系如圖 49 所示( Message 為例)。 I M e s s a g e D a oM e s s a g e D a oI B a s e D a oSi m p le H ibe r n a t e D a oH ibe r n a t e D a o Su p p o r tM e s s a g e Se r v ic eI M e s s a g e Se r v ic e 圖 49業(yè)務邏輯組件和 DAO組件及數(shù)據(jù)之間的依賴關(guān)系圖 在 Service 層中,利用 Spring 的依賴注入與控制反轉(zhuǎn)進行橫向切入,提高效率。 bean id=userDao class= property name=sessionFactory ref=sessionFactory/property /bean bean id=friendDao class= property name=sessionFactory ref=sessionFactory/property /bean ! 將 userDao和 friendDao注入到 userService中 bean id=userService class= property name=userDao ref=userDao/property property name=friendDao ref=friendDao/property /bean 28 信息科學與技術(shù)學院學士學位論文 Web 層設計 Web是在 Inter上的一種新的資源組織形式,也是一種新的新的信息服務方式。它是由 Web 瀏覽器和 Web 服務器兩部分組成。 Web 瀏覽器主要用于在用戶機器上處理和顯示超文本文件即 Web 頁面 ), Web 服務器接收 Web 瀏覽器傳送來的 Web 資源和 URL 地址,并將響應的文本或信息提供給客戶端的 We b 瀏覽器。 Web 服務器系統(tǒng)通過超文本鏈接功能和 HTTP 協(xié)議,將文本、圖像、聲音和其他 Inter 上的資源緊密地結(jié)合起來,只要在 Web 瀏覽器的地址欄中輸入 Web 資源的 URL 地址,既可以Web 頁面的形式顯示在 Web 瀏覽器上,并且組成 Web 的超大型文本文件通過超鏈接相互連接,只要在鏈接點上單擊一下,就可以從當前頁面跳轉(zhuǎn)到某個其他頁面, Web資源的這種方便的訪問方式大大加速了 Inter 的普及使用。 Web 的基礎(chǔ)上,在人們開發(fā)出了各種各樣的即時通訊系統(tǒng)。 Web 層的主要任務有: ( 1) 顯示用戶界面 ; ( 2) 驗證用戶的輸入 ; ( 3) 與服務器進行交互 。 系統(tǒng)中采用 Struts 2 作為系統(tǒng)中 MVC 框架。在控制器層都由 Struts 2 的 Action充當,這些 Action 通過調(diào)用系統(tǒng)業(yè)務邏輯層的業(yè)務邏輯方法來處理用戶請求,并將處理結(jié)果存入系統(tǒng)中,同時在 JSP 頁面中通過 Struts 2 的標簽庫輸出這些處理結(jié)果。 系統(tǒng)中還使用了 Servlet 作為 Web 層的實現(xiàn)技術(shù),以下以更新信息為例子簡單介紹下實現(xiàn)方法。如圖 410 所示。 本章主要介紹了整個系統(tǒng)的設計思路,通過 MVC 模式能夠更加快捷方便的理清脈絡,使設計路線更下清晰有效 。 29 信息科學與技術(shù)學院學士學位論文 U p d a t e Se r v le t+d oG e t ( )+d oP os t ( )U s e r D a oI U s e r D a oSi m p le H ibe r n a t e D a oH ibe r n a t e D a o Su p p o r t 圖 410用戶更新信息實現(xiàn)類圖 30 信息科學與技術(shù)學院學士學位論文 5 系統(tǒng)實現(xiàn) 系統(tǒng)的實現(xiàn)是整個開發(fā)過程中最重要的一環(huán),設計做得再好,系統(tǒng)無法實現(xiàn),一切都是徒勞,所以系統(tǒng)的實現(xiàn)就意味著整個項目的成功與否。 開發(fā)環(huán)境部署 系統(tǒng)采用主流框架 SSH 并使用服務器 Tomcat, Myeclipse 進行開發(fā)。系統(tǒng)中需要完成 Hibernate 和 Spring 的整合,下面將針對整合進行分析 。 Hibernate 和 Spring 的整合, Spring 的 IOC 容器是一個功能非常強大的工廠,不僅可以管理系統(tǒng)中的業(yè)務邏輯組件,還可以管理系統(tǒng)中的 數(shù)據(jù)源,也可以管理Hibernate 的 SessionFactory 實例。一旦我們將 SessionFactory 配置成一個普通的Bean,當 Spring 容器啟動時,系統(tǒng)將自動創(chuàng)建 SessionFactory Bean。因為 Spring的 IOC 容器將 SessionFactory 納入了容器的管理之中,而且系統(tǒng)的 DAO 組件也在容器的管理之中。因此, Spring 的 IOC 容器還可以將 SessionFactory 實例注入到每個需要持久化操作的組件中,從而以松耦合的方式來管理 Hibernate 的SessionFactory,避免了直接在 DAO 容器中主動獲取 SessionFactory 實例。但在開發(fā)過程中發(fā)現(xiàn)這樣開發(fā)效率不高,每次對文件做了修改都得重新部署工程,同時重啟服務器,所以開發(fā)過程中引入了 Hibernate 的配置文件 對 Hibernate 的 SessionFactory 進行管理。 sessionfactory ! 顯示 Hibernate持久化操作所生成的 SQL語句 property name=show_sqltrue/property property name=runnew/property ! 設置數(shù)據(jù)庫 url property name=jdbc:oracle:thin:@localhost:1521:XE/property ! 設置數(shù)據(jù)庫用戶名 property name=ljc/property 31 信息科學與技術(shù)學院學士學位論文 ! 設置數(shù)據(jù)庫密碼 property name=liaojiangchen/property ! 設置數(shù)據(jù)庫驅(qū)動 property name=/property ! 設置數(shù)據(jù)庫語言 property name=dialect/property /sessionfactory 在 中的配置 bean id=sessionFactory class=an property name=dataSource ref=dataSource / property name=mappingResources list !—設置對應的映射文件 valueedu/jju/entity/map//value valueedu/jju/entity/map//value valueedu/jju/entity/map//value /list /property ?? /bean PO 層的實現(xiàn) PO 層即為域模型層,主要是各個實體類的實現(xiàn)。 目錄結(jié)構(gòu)如下: 32 信息科學與技術(shù)學院學士學位論文 圖 51 實體結(jié)構(gòu)目錄 各個實體類中只需設置類的屬性以及生成 set()、 get()方法, 以 Message 為例子列出關(guān)鍵代碼: public class Message implements { private static final long serialVersionUID = 6277499417241579886L。 //Message類的屬性 private String id。 private String sendId。 private String receiveId。 private String content。 private Date sendDate。 private boolean readed。 //給各個屬性生成 set()和 get()方法 public Message() { id = ()。 } public String getId() { return id。 } public void setId(String id) { = id。 33 信息科學與技術(shù)學院學士學位論文 } public Date getSendDate() { return sendDate。 } public void setSendDate(Date sendDate) { = sendDate。 } public boolean isReaded() { return readed。 } public void setReaded(boolean readed) { = readed。 } public String getContent() { return content。 } public void setContent(String content) { = content。 } ?? } Service 層實現(xiàn) Service 層 即業(yè)務邏輯層, 主要是針對系統(tǒng)中的具體功能的實現(xiàn),該層實現(xiàn)同樣通過面向接口編程實現(xiàn),其實現(xiàn) 主要類如圖 52。 34 信息科學與技術(shù)學院學士學位論文 圖 52業(yè)務層主要的類 在此以信息處理實例為例,其中 MessageService 的主要實現(xiàn)代碼, 以查找聊天記錄方法舉例: public ListMessage getAllMsg(String sendId, String receiveId) { StringBuilder hql = new StringBuilder( SELECT message FROM Message message WHERE (=39。)。 (sendId).append(39。 AND )。 (=39。)。 (receiveId).append(39。) )。 (or (=39。)。 (receiveId).append(39。 AND )。 (=39。)。 (sendId).append(39。))。 ListMessage list = (())。 return list。 } } DAO 實現(xiàn) DAO 層的 主要任務就是實現(xiàn)對實體對象的 CRUD 操作,該層實現(xiàn)面向接口的編程,提高系統(tǒng)的可復用性。 35 信息科學與技術(shù)學院學士學位論文 主要方法實現(xiàn)代碼 : /**插入一個實體 */ public void insert(final T entity)。 /** 更新一個實體 */ public void update(final T entity)。 /**如果實體存在,更新一個實體,如果實體不存在,插入一個實體 */ public void saveOrUpdate(final T entity)。 /**刪除某個實體 */ public void delete(final T entity)。 /** 根據(jù) ID 得到某個實體,采用 load 方式,如果不存在,會拋出異常 */ public T get(final PK id)。 /** 根據(jù) ID 得到某個實體 ,采用 g
點擊復制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1