




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、畢業(yè)設計說明書企業(yè)內部即時通訊系統(tǒng)的設計與實現電子與計算機科學技術學院海南社區(qū)學生姓名: 學號: 學 院: 網絡工程專 業(yè): 指導教師: 2015年6月企業(yè)內部即時通訊系統(tǒng)的設計與實現摘 要隨著計算機網絡應用的逐漸普及,網絡已經成為人們掌握信息、交流信息以及管理信息必不可少的重要工具。實時通信的出現給人們帶來了極大的便捷,同時也帶來了時間和經濟上的節(jié)省。如今,網絡即時通信已經逐步發(fā)展成為應用于各行各業(yè)的信息交流工具。通過設計和實現一款集即時通信與人事管理于一體的網絡應用程序,討論并分析在TCP/IP協議的基礎上設計并實現一個C/S結構的即時通信系統(tǒng)的詳細過程。首先,介紹網絡即時通信開發(fā)的必備技
2、術知識,包括常用的即時通信系統(tǒng)的客戶端和服務器端的通訊協議,以及即時通信系統(tǒng)的功能設計、系統(tǒng)結構模式設計、數據信息設計等。其次,分析和設計客戶端與服務器端之間的通信協議,以規(guī)范系統(tǒng)中端與端的數據傳輸過程。然后,對系統(tǒng)中最重要的部分即網絡傳輸控制模塊,進行詳細的設計說明以及簡單的實現方案的闡述。最后,描述即時通信系統(tǒng)整體的邏輯處理流程,以及該系統(tǒng)在人事管理方面的功能實現,以及其他部分已通過測試服務器程序測試的客戶端程序代碼。即時通信系統(tǒng)的設計與實現在企業(yè)建立自己特色的集信息管理和即時通信為一體的內部應用軟件方面具有一定的應用前景。關鍵詞:即時通信,網絡應用程序,TCP/IP,通信與辦公系統(tǒng)Des
3、ign and Implementation of Enterprise Instant Messaging SystemAbstractAs the widespread of web application, internet has become the indispensable tool for information acquisition,communication and management.The advent of real-time communication has brought people great convenience as well as saving
4、time and money. Nowadays, web-based real-time communication has been developed to a communication tool for many fields.Analyzes and discuss the process of designing and implementing a real-time communication system of C/S structure based on TIP/IP protocol, through designing and implementing a netwo
5、rk application combined the functions of instant communication tool and also a personnel management tool. First, to introduce some necessary technical knowledge and the functional designing、system structure module designing and data information designing of development of the IM system. Second, anal
6、yze and design the communication protocol between Client and Server of the system to regular the data transportation process between ports. Third, describe the designing and implementation of the most important part of the system which is the web transportation controlling module. Finally, introduce
7、 the logic processing of the whole IM system and some client programs or code which have passed the testing of server program.Designing and implementing of IM system has a definite applying prospect in the aspect of building an interior and own application which gather instant messaging and informat
8、ion managing.Key words:Instant Messaging,Network Application,TCP/IP,IM in Office目 錄1 引言11.1 課題的背景與意義11.2 相關技術知識簡介21.2.1 基于SOCKET的網絡編程21.2.2 UDP協議與TCP協議的簡單介紹21.2.3 WINSOCK套接字API調用的簡單流程32 系統(tǒng)的相關分析與總體設計42.1 設計目標42.2 需求分析42.2.1 功能性需求分析42.2.2 系統(tǒng)用例分析42.3 概要設計原則52.4 系統(tǒng)安全與分析設計62.5 數據庫結構設計72.6 系統(tǒng)開發(fā)環(huán)境和運行環(huán)境92.6
9、.1 系統(tǒng)的開發(fā)環(huán)境92.6.2 系統(tǒng)的運行環(huán)境93 系統(tǒng)詳細設計與實現103.1 系統(tǒng)登錄界面103.2 系統(tǒng)主界面133.3 系統(tǒng)聊天通訊界面153.4 查找好友界面183.5 個人設置界面213.6 密保安全界面234 系統(tǒng)測試264.1 軟件測試介紹264.2 軟件測試過程264.3 本系統(tǒng)所進行的測試26總 結27參考文獻28致 謝301 引言1.1 課題的背景與意義隨著計算機網絡的發(fā)展,人類的通信方式也發(fā)生了翻天覆地的變化。網絡通信早已取代傳統(tǒng)的紙質信件,電話網絡的地位也在這個年代受到了來自計算機網絡的挑戰(zhàn)??傊W絡通信在我們的生活和企業(yè)中可以說已經必不可少,企業(yè)內部即時通訊就是
10、其中的重要組成部分1。目前,中國市場上的企業(yè)級即時通信工具主要包括:易睦網絡的imo云辦公室、叮當旺業(yè)通、Anychat、網絡飛鴿、匯訊WiseUC、大螞蟻Bigant、上海盈碩的蟻傲、騰訊RTX、FastMsg、263EM、IBM的Lotus Sametime、點擊科技的GKE、中國移動的企業(yè)飛信、華夏易聯的e-Link、網絡飛鴿QuickDove等2。相對于個人即時通信工具而言,企業(yè)級即時通訊工具更加強調安全性、實用性、穩(wěn)定性和擴展性,同時更可根據應用的實際能按需定制,隨著企業(yè)信息化進程的不斷演進,企業(yè)即時通訊在企業(yè)中的應用將越來越廣泛。企業(yè)內部即時通訊系統(tǒng)是企業(yè)員工在工作時經常要與其他同
11、事進行協同工作和跨部門合作,全方位地利用有限資源協同完成更多工作,因此各部門同事間需要進行即時的溝通。采用JMS (Java Message Service)技術實現企業(yè)內部的即時通訊系統(tǒng)。使該系統(tǒng)為使用者提供即時消息、網絡會議、文件傳輸、系統(tǒng)公告等功能,可實現使用者與各部門同事間協同辦公的要求,滿足企業(yè)內部進行更加高效溝通的需求,為企業(yè)提供一種公共的、可靠的內部溝通方式。企業(yè)內部即時通訊系統(tǒng)的好處: (1)提高工作效率:在與公司客戶與同事溝通時能夠達到提高工作效率。 (2)快速解決溝通問題。 (3)可以迅速知道對方是否在線。 (4)與郵件、移動短信結合更是威力無窮。當適合公司的即時通訊系統(tǒng)廣
12、泛應用于工作后,交流渠道便于扁平化管理,業(yè)務上的平等交流;因為是書面交流,有利于理清頭緒,明晰表達;而且,辦公室人與人之間的關系變得更加真誠和緊密。 所以縱上所述,如果企業(yè)要用即時通信,最好用專用的企業(yè)即時通訊系統(tǒng),而最好不要用個人即時通訊3-5。1.2 相關技術知識簡介1.2.1 基于SOCKET的網絡編程SOCKET在英文中的意思是插座,在網絡編程中,其實際意義可以理解為網絡通信連接的插座,通常稱之為套接字。如果將網絡連接的各終端類比為電話,則SOCKET即相當于電話線插座,為各終端提供或創(chuàng)建與其他終端通信連接的橋梁或通道。所有的終端都必須接通此“插座”來完成與其他終端的連接或通信,否則,
13、它將獨立于網絡之外6。由此可以知道知道,SOCKET是終端間建立連接的核心對象。那么,對于一個SOCKET對象,它到底具備什么樣的功能呢?通常,用WINSOCK庫來創(chuàng)建和使用SOCKET,運用WINSOCK庫的基本API,就可以實現簡單的數據輸入和輸出(即發(fā)送數據和接受數據)。在創(chuàng)建一個SOCKET對象后,通過指定IP地址來確定該SOCKET與哪臺機器發(fā)生交流,通過指定機器端口號(一般為1024以上)確定與該機器上哪個應用程序進行交流。在確定了交流對象后,便可以使用SOCKET與對象機器上的應用程序進行數據的傳輸和信息的交流。在面向連接的網絡通信中,還必須使用SOCKET進行連接的監(jiān)聽和創(chuàng)建,
14、只有創(chuàng)建了穩(wěn)定的連接后,才開始進行數據的傳輸7。由于交互方式的不同,SOCKET也分為兩種,一種是無連接的數據報形式的,一種則是面向連接的流式套接字,這也是接下來兩小節(jié)要闡述的內容8。1.2.2 UDP協議與TCP協議的簡單介紹UDP協議是一個簡單的面向數據報的運輸層協議:進程的每個輸出操作都正好產生一個UDP數據報,并組裝成一份待發(fā)送的IP數據報。這與面向流字符的協議不同,如TCP,應用程序產生的全體數據與真正發(fā)送的單個IP數據報可能沒有什么聯系9。UDP不提供可靠性:它把應用程序傳給IP層的數據發(fā)送出去,但是并不保證它們能到達目的地,其過程可以比做投遞信件,它只關心信件確實投放到信箱,至于
15、對方是否正確、按時收到信件,UDP并不關心10。盡管TCP和UDP都使用相同的網絡層(IP),TCP卻向應用層提供與UDP完全不同的服務。TCP提供一種面向連接的、可靠的字節(jié)流服務11。面向連接意味著兩個使用TCP的應用(通常是一個客戶和一個服務器)在彼此交換數據之前必須先建立一個TCP連接。這一過程與打電話很相似,先撥號振鈴,等待對方摘機說“喂”,然后才說明是誰并與之開始對話12。1.2.3 WINSOCK套接字API調用的簡單流程本論文所要討論的即時通信系統(tǒng)則是通過WINSOCK庫的應用來設計和實現基于TCP的C/S結構的網絡即時通信程序。這里,用圖的方式簡單的表示出對WINSOCK庫提供
16、的API函數調用過程13。2 系統(tǒng)的相關分析與總體設計2.1 設計目標本系統(tǒng)主要是為中小型企業(yè)內部使用的帶有簡單人事管理功能的局域網即時通信系統(tǒng),由于要存儲并管理用戶相關信息的數據,同時要限制普通用戶對數據信息的管理權限,比較合適的設計是采用C/S模式的系統(tǒng)架構,數據由數據庫進行存儲,由服務器對數據庫進行直接操作,而客戶端則通過對服務器發(fā)出請求得到相應的數據或者告知服務器對數據庫進行何種操作14。2.2 需求分析2.2.1 功能性需求分析本系統(tǒng)這實現了企業(yè)內部網絡聊天工具所具備的基本功能,即注冊、登錄、查找好友,添加好友、更改個人資料、查看好友資料、添加刪除分組、各分組之間轉移好友、發(fā)送消息、
17、接收消息、接收系統(tǒng)消息等,還添加了一些特色功能,如隱身,頭像的變化,系統(tǒng)管理員可以向每個客戶端發(fā)送系統(tǒng)消息,上線下線在好友客戶端都有提示,密碼丟失可以通過密碼找回功能通過設置的密保問題找回密碼,并可以判斷密碼的安全等級等。本系統(tǒng)實現了一個與Tencent QQ相似的友好操作界面,簡單,易用,適合用戶的操作習慣15。謝謝海南社區(qū)支持: 該系統(tǒng)具備了網絡聊天工具所具備的基本功能,系統(tǒng)或許存在一些未知的Bug,還需要進一步的改進和測試。在以后的研究中,我們還會研究安全通信協議,保障通信的安全,提高系統(tǒng)的實用性等16。2.2.2 系統(tǒng)用例分析 (1)系統(tǒng)普通用戶用例分析登錄界面查看好友信息更改個人信息
18、添加刪除分組發(fā)送信息密保設置接受信息分組轉移好友背景更改 普通用戶圖2.1 系統(tǒng)普通用戶用例圖查找好友 (2)系統(tǒng)管理員用例分析操作數據庫查看操作日志發(fā)布系統(tǒng)公告系統(tǒng)管理員圖2.2 系統(tǒng)管理員用例圖2.3 概要設計原則 企業(yè)內部即時通訊系統(tǒng)總體設計目的是加強對需求分析階段的功能性需求和非功能性需求的綜合考慮和理解,系統(tǒng)建設中我們將采用基于C/S模式構建。這些技術的應用實現系統(tǒng)應用的安全、穩(wěn)定及擴展要求以及開放的跨平臺能力和兼容性17。實現了操作界面、應用邏輯、業(yè)務數據相對獨立,使本系統(tǒng)的實施更加方便、靈活、易于擴展18。為了進一步的規(guī)劃詳細的系統(tǒng)解決方案做準備,本系統(tǒng)在設計過程中注重考慮了以下
19、幾個特性: (1)實用性本系統(tǒng)的現實需求就是針對企業(yè)內部工作交流不便,浪費時間,數據傳送效率低等特點,希望提出一個實用的能滿足系統(tǒng)的功能要求和實際應用的需要的企業(yè)內部即時通訊系統(tǒng)。所以盡量選擇成熟實用的技術,使得整個系統(tǒng)有一個安全、穩(wěn)定的運行環(huán)境19。 (2)可擴展性為使系統(tǒng)能有良好的兼容性和可擴展性,系統(tǒng)在設計時充分考慮了數據庫設計容量與處理能力等方面的擴充與升級的可能,不僅充分保護了原有投資,還保證了以后系統(tǒng)功能升級的方便20。 (3)安全性系統(tǒng)對數據的完整性和安全性具有很高的要求。為了保障系統(tǒng)平穩(wěn)正常的運行,整個系統(tǒng)必須具有很高的安全可靠性,因此,在企業(yè)內部即時通訊系統(tǒng)應充分利用數據庫的
20、維護工具,便于數據備份、恢復,從而提高系統(tǒng)的安全性21。 (4)可維護性企業(yè)內部即時通訊系統(tǒng)的設計要本著“簡單易用”的原則,方便用戶的使用。對于用戶來說,只要掌握基本的計算機操作,便可完成整個操作對于管理員來說,設計時以可維護性為主,做到故障易于排除,日常管理操作簡便22。 (5)完整性系統(tǒng)的完整性,涉及到友好的用戶界面,高效的信息處理,安全可靠的數據管理,以及優(yōu)化的網絡設計23。2.4 系統(tǒng)安全與分析設計 由于本系統(tǒng)的的安全界面中,分為:“安全概述”,“常見欺詐”,“修改密碼”,“修改密?!?; (1)安全概述分析設計:主要是描述飛狐2013系統(tǒng)當前帳號的安全狀況 if (設置密保并且密碼等級
21、為良好以上) 安全狀況良好請繼續(xù)保持良好的習慣 可立即完成設置密碼 else if (設置密保并且密碼等級為中等以下) 安全狀況存在隱患請定期修改密碼 立即完成設置密碼 else 安全狀況危險請立刻設置密保問題 立即完成設置密保 (2)常見欺詐 常見的集中欺詐方式:釣魚網址,視頻欺詐,中獎欺詐,冒充好友欺詐; (3)修改密碼 修改密碼之前請確保設置密保;如果沒有設置密保問題,請先設置密保問題,以確保該賬戶的安全性。如果設置了密保問題,請先輸入原密保問題,核對用戶身份。密保正確才可以修改,如果錯誤,則不能修改密碼。 (4)修改密保 如果沒有設置密保問題,設置密保問題。如果設置了密保問題,請先輸入
22、原密保問題,核對用戶身份。密保正確才可以修改,如果錯誤,則不能修改密保。2.5 數據庫結構設計本系統(tǒng)數據庫采用 mysql5.6,系統(tǒng)主要需要維護3張數據表:名稱登錄信息描述用戶登錄時的賬號密碼檢測來源用戶去處服務器用戶表組成ID+密碼 表2.1 登錄信息表表2.2 好友信息表名稱取值類型長度昵稱Char8IDInt6到8位密碼Char6-16問題NOInt1-2問題答案Char20登錄狀態(tài)Int1 年齡Smallint0-99 地區(qū)Char20性別Char2簽名Char100說明Char255問題詳細Char20好友IDInt6-8好友類型Int1好友分組Int1備注char10好友類型詳細
23、Char6好友分組詳細Char10日期Date內容Char255表2.3 注冊信息名稱注冊信息描述注冊新賬號來源用戶去處服務器用戶表組成密碼+個人資料表2.4 機位信息表名稱聊天信息描述用戶聊天時發(fā)送信息來源用戶去處聊天記錄表組成發(fā)送方IP+接收方IP+消息內容2.6 系統(tǒng)開發(fā)環(huán)境和運行環(huán)境2.6.1 系統(tǒng)的開發(fā)環(huán)境本系統(tǒng)開發(fā)平臺選擇考慮到以下幾個方面的因素:硬件環(huán)境、數據的安全性以及技術支持等等。因此選擇操作系統(tǒng):Windows 7、Windows XP;開發(fā)工具:Eclipse;數據庫:MySQL6.0;開發(fā)語言:Java。2.6.2 系統(tǒng)的運行環(huán)境本系統(tǒng)由兩部分組成:置于個用戶PC機上的
24、飛狐2013客戶端,以及置于實驗室高性能服務器上的數據庫服務器。根據調研得知客戶端的計算機配置Pentum4級別以上,服務器PC應配備更高的配置,在Windows xp環(huán)境下運行。3 系統(tǒng)詳細設計與實現3.1 系統(tǒng)登錄界面系統(tǒng)用戶登錄時,先打開登錄頁面,然后填寫用戶和密碼信息,并選擇狀態(tài),點確定后連接數據庫,檢驗用戶名密碼是否正確,正確則進入到系統(tǒng)主界面。不正確則提示輸入的密碼有誤,請重新輸入。輸入密碼選擇狀態(tài)輸入的密碼是否正確登錄成功跳轉到主頁面其它操作圖3.1 用戶登錄流程圖YN輸入用戶名圖3.2 軟件登錄界面核心代碼:private void jb_loginactionPerforme
25、d(ActionEvent e) throws UnknownHostException, IOException, InterruptedExceptionif (jt_user.getText().equals()JOptionPane.showMessageDialog(null, 請輸入賬號后再登陸, 提示, JOptionPane.INFORMATION_MESSAGE);else if(jt_user.getText().length() 20)JOptionPane.showMessageDialog(null, 請輸入正確的賬號,賬號可以位數字或Email地址。, 提示, JO
26、ptionPane.INFORMATION_MESSAGE);else if (jp_password.getText().equals()JOptionPane.showMessageDialog(null, 請輸入密碼后再登陸, 提示, JOptionPane.INFORMATION_MESSAGE);elselogin_message lmessage = new login_message(jt_user.getText(), jp_password.getText(), 0, 0, 0, 0, jco_status.getSelectedIndex() + 1);MainInterf
27、ace main = new MainInterface(lmessage);this.dispose();private void jb_loginactionPerformed(KeyEvent e) throws UnknownHostException, IOException, InterruptedExceptionif (jt_user.getText().equals()JOptionPane.showMessageDialog(null, 請輸入賬號后再登陸, 提示, JOptionPane.INFORMATION_MESSAGE);else if (jt_user.getT
28、ext().length() 20)JOptionPane.showMessageDialog(null, 請輸入正確的賬號,賬號可以位數字或Email地址。, 提示, JOptionPane.INFORMATION_MESSAGE);else if (jp_password.getText().equals()JOptionPane.showMessageDialog(null, 請輸入密碼后再登陸, 提示, JOptionPane.INFORMATION_MESSAGE);elselogin_message lmessage = new login_message(jt_user.getT
29、ext(), jp_password.getText(), 0, 0, 0, 0, jco_status.getSelectedIndex() + 1);MainInterface main = new MainInterface(lmessage);this.dispose(); 馮武寶 海南社區(qū) 3.2 系統(tǒng)主界面圖3.3 系統(tǒng)主界面核心代碼:class loginFounction extends Threadpublic void run()trylogin_message lm = new login_message(lmessage.qq, lmessage.password, s
30、ys_port, main_port, alive_port, transmit_port, lmessage.status);loginClientThread loginThread = new loginClientThread(lm);loginThread.join(30000);if (loginThread.changed = 1)sendHeartbeatThread_main_temp.start();load();changed = 1;else if (loginThread.changed = 2)/ 當賬號和密碼不匹配時JOptionPane.showMessageD
31、ialog(null, 您的賬號和密碼不匹配!, 提示, JOptionPane.INFORMATION_MESSAGE);System.exit(0);else/ 當登錄超時的情況JOptionPane.showMessageDialog(null, 系統(tǒng)繁忙,請稍后再試!, 提示, JOptionPane.INFORMATION_MESSAGE);System.exit(0);catch (Exception e)class receiveMainInfoThread extends ThreadServerSocketserver;Socketclient;public receiveM
32、ainInfoThread()server = getAvailableServerSocketFunction.getServerSocket(main_port);main_port = server.getLocalPort();3.3 系統(tǒng)聊天通訊界面圖3.4 聊天通訊界面核心代碼:public void actionPerformed(ActionEvent e)if (e.getActionCommand() = 表情)Point p = MouseInfo.getPointerInfo().getLocation();final expression ex = new expre
33、ssion(p.x, p.y);ex.addWindowListener(new WindowAdapter() public void windowActivated(WindowEvent e)/ 當窗口不活躍的時候,自動關閉該窗口public void windowDeactivated(WindowEvent e)ex.dispose(););ex.setVisible(true);else if (e.getActionCommand() = 粗體)if (countBold+) % 2 = 0)jt_recive.setUnBold();elsejt_recive.setBold(
34、);else if (e.getActionCommand() = 斜體)if (countItaic+) % 2 = 0)jt_recive.setUnItalic();elsejt_recive.setItalic();else if (e.getActionCommand() = 顏色)color = JColorChooser.showDialog(null, 選擇顏色, Color.black);/ 顯示調色板color1 = color.getRed();color2 = color.getGreen();color3 = color.getBlue();jt_recive.set
35、Color(new Color(color1, color2, color3);jt_send.requestFocus();else if (e.getActionCommand() = 關閉)MainInterface.map_portLocal.remove(anotherQQ);MainInterface.map_chatWindows.remove(anotherQQ);dispose();else if (e.getActionCommand() = 發(fā)送)if (!jt_send.getText().equals()text = jt_send.getText();jt_reci
36、ve.insert_text2(myname + + time.gettime();transformToReceive(addSize(addColor(text);jt_send.setText();jt_recive.selectAll();jt_recive.setCaretPosition(jt_recive.getSelectedText().length();jt_recive.requestFocus();jt_send.requestFocus();3.4 查找好友界面 圖3.5 查找好友界面核心代碼:void action()int mark = 1;if (tabNum
37、= 0) / tabNum = 0查找聯系人if (jr_1.isSelected() / 查找聯系人 - 精確查找sign = 1; if (jt_user.getText().equals() & jt_nickname.getText().equals()JOptionPane.showMessageDialog(null, 請至少填一個查詢條件, 警告, JOptionPane.WARNING_MESSAGE);mark = 0;if (!jt_user.getText().equals()user = jt_user.getText();elseuser = null;if (!jt
38、_nickname.getText().equals()nickname = jt_nickname.getText();elsenickname = null;else if (jr_2.isSelected() / 查找聯系人 - 條件查找sign = 2; country = item_countryjc_country.getSelectedIndex();if (country.equals(中國) province = item_provincejc_province.getSelectedIndex();if (province.equals(山東)if (!item_cityj
39、c_city.getSelectedIndex().equals(-)city = item_cityjc_city.getSelectedIndex();elsecity = null;else if (province.equals(北京)if (!item_cityjc_city.getSelectedIndex().equals(-)city = item_city1jc_city.getSelectedIndex();elsecity = null;else if (province.equals(-)province = null;city = null;else if (coun
40、try.equals(美國)if (!province.equals(-)province = item_province1jc_province.getSelectedIndex();else if (province.equals(-)province = null;city = null;city = null;3.5 個人設置界面圖3.6 個人設置界面核心代碼:public information(personalInfo pinfo, Container c_temp1, MainInterface mainFrame)this.pinfo = pinfo;c_temp_mainIn
41、terface = c_temp1;this.main_frame = mainFrame; Image image = Toolkit.getDefaultToolkit().getImage(pic/face/b.jpg);setIconImage(image);screenSize = Toolkit.getDefaultToolkit().getScreenSize();frameSize = this.getPreferredSize();/ 保持彈出窗口居中this.setLocation(screenSize.width - frameSize.width) / 5, (scre
42、enSize.height - frameSize.height) / 6);Container container = getContentPane();/ 設置背景圖片jl_down = new JLabel();/ 把背景圖片顯示在一個標簽里面jl_down.setIcon(new ImageIcon(pic/background/2.jpg);jl_down.setSize(600, 450);c = (JPanel) container;c.add(jl_down);c.setOpaque(false);c.setLayout(null);jp_left = new JPanel()
43、;jp_left.setBounds(0, 0, 150, 380);jp_left.setLayout(null);jp_left.setOpaque(false);c.add(jp_left);jl_head = new JLabel();jl_head.setBounds(25, 10, 100, 100);jl_head.setIcon(new ImageIcon(s1 + pinfo.headImage + _4 + s2);jp_left.add(jl_head);jb_head = new JButton();jb_head.setBounds(30, 115, 90, 20);
44、jb_head.setText(更換頭像);jb_head.setActionCommand(更換頭像);jb_head.addActionListener(this);jp_left.add(jb_head);3.6 密保安全界面圖3.7 帳號密保界面核心代碼: jp2_1.setLayout(null);jp2_1.setOpaque(false);jp2_1.setBorder(new LineBorder(Color.gray);jl2_9 = new JLabel();jl2_9.setIcon(new ImageIcon(pic/safe/key.png);jl2_9.setBou
45、nds(20, 30, 40, 40);jl2_9.setFont(new Font(宋體, Font.PLAIN, 14);jp2_1.add(jl2_9);jl2_10 = new JLabel();jl2_10.setText(驗證密保修改密保);jl2_10.setBounds(65, 40, 150, 20);jl2_10.setFont(new Font(宋體, Font.PLAIN, 14);jp2_1.add(jl2_10);/ 問題一jl2_11 = new JLabel();jl2_11.setBounds(20, 80, 300, 20);jl2_11.setFont(n
46、ew Font(宋體, Font.PLAIN, 14);jp2_1.add(jl2_11);/ 答案一jl2_12 = new JLabel();jl2_12.setText(答案一:);jl2_12.setBounds(20, 110, 60, 20);jl2_12.setFont(new Font(宋體, Font.PLAIN, 14);jp2_1.add(jl2_12);jt2_1 = new JTextArea();jt2_1.setBounds(77, 110, 200, 20);jt2_1.setBorder(new LineBorder(Color.gray);jp2_1.add
47、(jt2_1);/ 如果為空輸出“空”jl2_17 = new JLabel();jl2_17.setBounds(280, 110, 100, 20);jl2_17.setFont(new Font(宋體, Font.PLAIN, 14);jl2_17.setForeground(Color.red);jp2_1.add(jl2_17);/ 問題二jl2_13 = new JLabel();jl2_13.setBounds(20, 140, 300, 20);jl2_13.setFont(new Font(宋體, Font.PLAIN, 14);jp2_1.add(jl2_13);/ 答案二
48、jl2_14 = new JLabel();jl2_14.setText(答案二:);jl2_14.setBounds(20, 170, 60, 20);jl2_14.setFont(new Font(宋體, Font.PLAIN, 14);jp2_1.add(jl2_14);jt2_2 = new JTextArea();jt2_2.setBounds(77, 170, 200, 20);jt2_2.setBorder(new LineBorder(Color.gray);jp2_1.add(jt2_2);4 系統(tǒng)測試4.1 軟件測試介紹軟件測試是在軟件投入運行前,對軟件需求分析、設計規(guī)格說
49、明和編碼的最終復審,是軟件質量保證的關鍵步驟。測試的目標是以較少的用例、時間和人力找出軟件中潛在的各種錯誤和缺陷,以確保系統(tǒng)的質量24。謝謝海南社區(qū)支持:在軟件實現過程中,要編寫規(guī)范化的程序代碼,而且要對程序代碼進行單元測試,即模塊測試或部件測試,然后,進行集成測試和驗收測試。測試方法為宏觀上采取黑盒方法。微觀上采取白盒方法:大的功能模塊采用黑盒測試,小的構件采用白盒測試。在開發(fā)企業(yè)內部即時通訊系統(tǒng)時,每增加一個構件采用白盒測試,通過白盒測試后把該構件集成到系統(tǒng)中,當所有構件集成完畢后,進行黑盒測試25。4.2 軟件測試過程測試評價可靠性糾錯預期的結果測試結果軟件測試構造錯誤正確錯誤率數據可靠性預測圖4.1 軟件測試過程4.3 本系統(tǒng)所進行的測試 (1)用戶注冊功能的測試。 (2)普通用戶的基本功能測試(包括登錄、查找好友、更改個人信息、更該背景)。 (3)普通用戶的添加和刪除分組的功能測試。 (4)用戶的聊天通訊功能測試(包括發(fā)送信息、接受信息)。 (5)用戶安全功能測試(包括密保設置、密保強度檢測和通過密保修改密碼)。 (6)系統(tǒng)管理員發(fā)送系統(tǒng)信息功能的測試???結本論文詳細的介紹了一個即時通信系統(tǒng)的設計和實現方案,該系統(tǒng)是一個針對中小型企業(yè)的集人事管理和內部交流與一體的即時通信系統(tǒng)。在論文中,從系統(tǒng)各個方面依次闡述其設計思想和實現方案,主
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中學教師資格考試《綜合素質》教育研究方法文獻綜述題(含答案)試題
- 2025年小學語文畢業(yè)升學考試全真模擬卷(語文綜合素養(yǎng)測評)古詩詞賞析與鑒賞試題
- 2025年成人高考《語文》得體表達實戰(zhàn)演練試題集與解析
- 2025年征信數據分析挖掘考試題庫:征信數據分析挖掘數據清洗與優(yōu)化
- 2025年小學英語畢業(yè)考試模擬卷:英語歌曲欣賞與演唱教學策略
- 2025年消防員消防信息化系統(tǒng)應用培訓試題集(深度實戰(zhàn)演練篇)
- 2025年CFA特許金融分析師考試深度解析模擬試題
- 2025年成人高考《語文》易錯點解析與實戰(zhàn)試題試卷
- 2025年小學英語畢業(yè)考試模擬試卷:英語歌曲與童謠教學情境創(chuàng)設策略研究案例總結報告試題
- 2025年小學英語畢業(yè)考試模擬卷(英語跨文化交際教學策略創(chuàng)新)
- 皮膚病的總論
- 人工智能倫理與社會影響的討論
- 讓改革創(chuàng)新成為青春遠航的動力
- T-CSGPC 016-2023 文物建筑健康監(jiān)測技術規(guī)范
- 前房積血護理查房
- 【課件】五指活動課程講解
- 采煤機說明書-樣本
- 數控折彎機操作手冊樣本
- 高超聲速飛行器氣動設計挑戰(zhàn)
- 網絡安全法律知識培訓
- 依奇珠單抗注射液-藥品解讀
評論
0/150
提交評論