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

正文內(nèi)容

基于java開發(fā)的企業(yè)內(nèi)部通信系統(tǒng)畢業(yè)論文-閱讀頁

2025-07-26 19:25本頁面
  

【正文】 與傳統(tǒng)一致的視野觀看數(shù)據(jù)庫,存取最后執(zhí)行的一行數(shù)據(jù)。 8 數(shù)據(jù)分割 :數(shù)據(jù)分割將加強(qiáng)本地表檢索分割,這使得大型表和索引可以得到高基于 JAVA 開發(fā)的企業(yè)內(nèi)部通信系統(tǒng) 7 效的管理。另外,新的對(duì)等交易式復(fù)制性能,通過使用復(fù)制,改進(jìn)了其對(duì)數(shù)據(jù)向外擴(kuò)展的支持。 (2) 基礎(chǔ)信息設(shè)置規(guī)范。 (4) 獨(dú)立的本地?cái)?shù)據(jù)庫。 (6) 提供用戶的更名、刪除等操作。保持版本的更新。 系統(tǒng)的可行性分析 該系統(tǒng)要求適應(yīng)任何操作系統(tǒng),作為企業(yè)內(nèi)部的通信交流工具,應(yīng)該在禁止使用聊天表情、文件傳送等功能,避免資料外泄。 基于局域網(wǎng)的信息通信技術(shù)現(xiàn)在已經(jīng)很純熟,從硬件方面來看 ,隨著計(jì) 算機(jī)的硬件處理速度的提升,這已經(jīng)不是限制限制網(wǎng)絡(luò)通信的條件了。從軟件方面來看,面向?qū)ο蟮倪@種程序設(shè)計(jì)語言以及數(shù)據(jù)庫的開發(fā)業(yè)發(fā)展的成熟, 并且目前的數(shù)據(jù)庫處理也達(dá)到了一定的速度,面對(duì)對(duì)象的編程思想也在不同的方面有了很好地成績。 功能結(jié)構(gòu)設(shè)計(jì) 本系統(tǒng)具有信息通信、用戶搜索、系統(tǒng)設(shè)置、系統(tǒng)升級(jí)、訪問公共資源、訪問對(duì)方主機(jī)等功能。用戶可以通過信息通信獲取需要的資料和指令。大大提高了企業(yè)的內(nèi)部辦事效率。用戶之間的通信功能是通過 UDP 協(xié)議的方式發(fā)送消息和進(jìn)行文件傳輸?shù)?。 (3) 系統(tǒng)設(shè)置 功能:一個(gè)好的軟件需要具有友好的用戶界面和便捷簡單 的操作方法,系統(tǒng)設(shè)置模塊提供用戶搜索、更換程序外觀皮膚 和系統(tǒng)的升級(jí)等三個(gè)功能,主要用戶界面的管理和維護(hù)工作,保證用戶登錄、用戶注冊(cè)、添加用戶和刪除用戶、聊天界面設(shè)置以及個(gè)人信息管理界面的顯示模 式等。 (5) 訪問公共資源:通過該功能用戶可以獲取其制定 IP 地址的公共主機(jī)上的資源,并進(jìn)行數(shù)據(jù)資料轉(zhuǎn)移等操作。 系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì) 企業(yè)內(nèi)部通信系統(tǒng)包含用戶和窗體位置兩個(gè)實(shí)體,這兩個(gè)實(shí)體分別用于記錄用戶信息和通信窗體的當(dāng)前位置。 ER 圖如下: 圖 341 用戶實(shí)體的 ER 圖 窗體位置實(shí)體: 窗體位置實(shí)體是窗體的定位參數(shù),它將 記錄窗體最后的移動(dòng)位置、窗體大小等信息,主要包括窗體位置的 X 坐標(biāo)和 Y 坐標(biāo)、窗體的寬度及高度, ER 圖如下: 圖 342 窗體位置實(shí)體的 ER 在本系統(tǒng) 中創(chuàng)建了一個(gè)數(shù)據(jù)庫 db_EQ,一共包含了兩個(gè)數(shù)據(jù)表,下面分別介紹這兩個(gè)數(shù)據(jù)表的邏輯結(jié)構(gòu)。表 tb_users 的結(jié)構(gòu)如表: 字段名 數(shù)據(jù)類型 是否為空 是否主鍵 默認(rèn)值 描述 ip Varchar(16) No Yes 用戶 IP地址 host Varchar(30) Yes No Null 主機(jī)名稱 name Varchar(20) Yes No Null 姓名 tooltip Varchar(50) Yes No Null 提示文本 icon Varchar(50) Yes No Null 頭像 表 343 用戶信息表 Tb_location(窗體位置信息表 ) 窗體位置信息表主要用來保存通信窗體的位置和窗體的大小。這種通信方式能夠?qū)崿F(xiàn)多個(gè)職工之間的通話,而不存在類似電話的占線問題 ,增加了任務(wù)分配的新方式,從而提高了企業(yè)員工的工作效率。 通信模塊使用 UDP 協(xié)議的數(shù)據(jù)報(bào)和套接字實(shí)現(xiàn)計(jì)算機(jī)之間的信息通信。當(dāng)連接的遠(yuǎn)程主機(jī)端口號(hào)處于監(jiān)聽狀態(tài)時(shí),則 IP 必須處于連接狀態(tài)。數(shù)據(jù)庫采用了 Microsoft SQL Server20xx 和 JDK 自帶的 Java DB,系統(tǒng)的開發(fā)工具環(huán)境使用 Eclipse 集成開發(fā)工具作為前臺(tái)開發(fā)工具,項(xiàng)目的運(yùn)行環(huán)境為JDK 。通信窗體的界面用于發(fā)送和接收通信信息;另外,還可以在對(duì)方未開啟企業(yè)通信系統(tǒng)的情況下向?qū)Ψ桨l(fā)送信使信息。系統(tǒng)選項(xiàng)卡用于切換不同的管理頁面,內(nèi)含系統(tǒng)工具和系統(tǒng)設(shè)計(jì)界面。 關(guān)鍵代碼如下: public class EQ extends Dialog { private JTextField ipEndTField。 private JTextField userNameTField。 private JTextField placardPathTField。 private JTextField pubPathTField。 基于 JAVA 開發(fā)的企業(yè)內(nèi)部通信系統(tǒng) 13 private ChatTree chatTree。 private JTabbedPane tabbedPane。 private JProgressBar progressBar。 private JButton selectInterfaceOKButton。 private final JLabel stateLabel。 private static File localFile。 private String FilePath。 private StackString messageStack。 private ImageIcon messageAlertNullIcon。 public static TrayIcon trayicon。 public final static Preferences preferences = ()。 (2) 需要初始化窗體上的控件、數(shù)據(jù)庫操作類、首選項(xiàng)對(duì)象等屬性,還要為窗體添加事件監(jiān)聽器以及公告信息按鈕添加事件監(jiān)聽器。這一步可以用于接受其他用戶發(fā)送的通信信息,如果啟動(dòng)失敗將無法接受信息,所以必須退出程序。 } catch (SocketException e2) { if (().startsWith(Address already in use)) showMessageDialog(服務(wù)端口被占用 ,或者本軟件已經(jīng)運(yùn)行。 (0)。當(dāng)公告路徑中存在公告信息時(shí),該方法將從公告文件中獲取完整信息,然后調(diào)用 pushMessage()方法將通告信息壓入公告信息棧中。 (6) 編寫 main()方法。最后,初始化服務(wù)器端口和系統(tǒng)欄圖標(biāo)。 if ((當(dāng)前系統(tǒng) )1) (UIManager .getSystemLookAndFeelClassName())。 //創(chuàng)建主窗體對(duì)象 (true)。// 初始化系統(tǒng)欄 ()。 //檢測(cè)系統(tǒng)公告 } catch (Exception e) { ()。 (2) 編寫 saveLocation()法可以調(diào)用 Dao 數(shù)據(jù)庫操作類的 updateLocation()法將窗體位置和窗體的大小保存到數(shù)據(jù)庫中。 ( 1) 數(shù)據(jù)庫操作類: 基于 JAVA 開發(fā)的企業(yè)內(nèi)部通信系統(tǒng) 16 Dao 類主要負(fù)責(zé)有關(guān)數(shù)據(jù)庫的操作,該類在構(gòu)造方法里驅(qū)動(dòng)并連接數(shù)據(jù)庫,之后將連接方法設(shè)置為 private 私有屬性,通過靜態(tài)的 getDao()方法獲取 Dao 類的實(shí)例對(duì)象,這是典型的單例模式。 關(guān)鍵代碼 public class Dao {// 數(shù)據(jù)庫驅(qū)動(dòng) private static final String driver = 。// 數(shù)據(jù)庫 URL private static Connection conn = null。 private Dao() { try { (driver)。create=true)。 } else conn = (url)。 } catch (Exception e) { ()。 )。 } } private boolean dbExists() {// 測(cè)試數(shù)據(jù)庫是否存在 基于 JAVA 開發(fā)的企業(yè)內(nèi)部通信系統(tǒng) 17 boolean bExists = false。 if (()) { bExists = true。 } public static Dao getDao() {// 獲取 DAO 實(shí)例 if (dao == null) dao = new Dao()。 } public void createTable() { // 創(chuàng)建數(shù)據(jù)表格 String createUserSql = CREATE TABLE tb_users ( + ip varchar(16) primary key, + host varchar(30), + name varchar(20), + tooltip varchar(50), + icon varchar(50))。 try { Statement stmt = ()。 (createLocationSql)。 ()。 } } ( 2) addDelfLocation()方法 此方法用于 添加窗體默認(rèn)位置和大小到數(shù)據(jù)庫,在企業(yè)內(nèi)部通信系統(tǒng)首次運(yùn)行時(shí),將使用此方法設(shè)置窗體位置和窗體大小。 ( 3) addDefUser()方法 此方法使用本機(jī) IP 地址創(chuàng)建默認(rèn)用戶,并添加到數(shù)據(jù)庫。 ( 4) getLocation()方法 此方法用于從數(shù)據(jù)庫中獲取窗體位置和窗體大小信息,并將這些信息封裝 成Rectangle 類的實(shí)例對(duì)象,然后作為方法的返回值。 ( 6) updateLocation()方法 此方法用于更新窗體位置和窗體大小信息,將接受 Rectangle 類的實(shí)例對(duì)象作參數(shù),將位置、寬度和高度等參數(shù)保存到數(shù)據(jù)庫中。 系統(tǒng)工具類 : Resource 類是企業(yè)內(nèi)部通信系統(tǒng)的工具類,該類中的工具方法都是靜態(tài)的,可以直接調(diào)用,不用創(chuàng)建 Resource 類的實(shí)例對(duì)象。 其中有以 下幾種方法: 基于 JAVA 開發(fā)的企業(yè)內(nèi)部通信系統(tǒng) 19 ( 1) searchUsers()方法 用于搜索局域網(wǎng)中的通信用戶。 ( 3) sendMessenger()方法 用于發(fā)送信使到指定用戶的操作系統(tǒng),當(dāng)通信對(duì)方?jīng)]有運(yùn)行企業(yè)內(nèi)部的通信系統(tǒng)時(shí),就無法接收到通信系統(tǒng)的發(fā)送內(nèi)容,此時(shí)這個(gè)方法就可以向?qū)Ψ桨l(fā)送信息,對(duì)方的操作系統(tǒng)接收到信使之后會(huì)以對(duì)話框的顯示內(nèi)容。 ( 5) startFolder()方法 用于打開指定的文件或者網(wǎng)絡(luò)共享資源。 系統(tǒng)模塊托盤的實(shí)現(xiàn) 企業(yè)內(nèi)部通信系統(tǒng)的主窗體是繼承對(duì)話框窗體編寫的, 該窗體在系統(tǒng)任務(wù)欄不會(huì)顯示相應(yīng)的任務(wù)標(biāo)題,主窗體最小化之后將會(huì)隱藏在系統(tǒng)任務(wù)欄中,不利于使用者的調(diào)取工作,這時(shí)必須使用快捷鍵或者系統(tǒng)托盤中的圖標(biāo)執(zhí)行顯示窗體的命令。包含 SystemTray 類和 TrayIcon 類,分別用于創(chuàng)建系統(tǒng)托盤和系統(tǒng)圖標(biāo)。由 PopupMenu 類和 MenuItem 類實(shí)現(xiàn)創(chuàng)建彈出菜單和菜單項(xiàng)。 實(shí)現(xiàn)過程: ( 1) 需要在主程序里面編寫 SystemTrayInitial()方法,用于初始化系統(tǒng)托盤,在方法中初始化系統(tǒng)托盤的提示文本、系統(tǒng)欄圖標(biāo),然后調(diào)用 createMenu()方法為系統(tǒng)欄圖標(biāo)創(chuàng)建 彈出菜單,同時(shí)為系統(tǒng)欄圖標(biāo)添加 SysTrayActionListener 類事件監(jiān)聽器。 ( 3) 創(chuàng)建 SysTrayActionListener 內(nèi)部類,它實(shí)現(xiàn)了 ActionListener 接口,是系統(tǒng)欄圖標(biāo)的雙擊事件監(jiān)聽器,在用戶雙擊系統(tǒng)欄圖標(biāo)之后,該監(jiān)聽器將實(shí)現(xiàn)主窗體的顯示基于 JAVA 開發(fā)的企業(yè)內(nèi)部通信系統(tǒng) 20 這和系統(tǒng)欄圖標(biāo)的 “ 打開 ” 菜單項(xiàng)所實(shí)現(xiàn)的功能相同,但是雙擊后會(huì)更加方便。 圖 434 系統(tǒng)托盤 系統(tǒng)工具模塊的實(shí)現(xiàn) 概述: 企業(yè)內(nèi)部通信系統(tǒng)的系統(tǒng)工具模塊起到維護(hù)系統(tǒng)的作用,包括用戶搜索、更換程序 外觀、系統(tǒng)升級(jí)等三個(gè)功能。在有新版的程序系統(tǒng)時(shí),可以直接升級(jí)到最新版本。 使 用 UIManager 類的 setLookAndFeel()方法可以設(shè)置不同的 LookAndFeel 外觀。 實(shí)現(xiàn)過程: ( 1) 在程序主類中編寫 createSysToolPanel()方法,用于創(chuàng)建 系統(tǒng)工具 的選項(xiàng)卡,在該選項(xiàng)卡中包含界面選擇,用戶搜索和系統(tǒng)操作三個(gè)部分。 ( 2) 在以 createSysToolPane()方法中創(chuàng)建界面選擇部分,該部分以列表控件顯示了兩種外觀選擇, 當(dāng)用戶選擇其中一種外觀并單擊“確定”按鈕之后,選擇的外觀會(huì)保存到首選項(xiàng)中,然后提示用戶重新運(yùn)行本軟件。 當(dāng)單擊“搜索新用戶”按鈕時(shí),系統(tǒng)會(huì)根據(jù)用戶基于 JAVA 開發(fā)的企業(yè)內(nèi)部通信系統(tǒng) 21 在系統(tǒng) 設(shè)置界面所設(shè)置 IP 搜索范圍搜索所有計(jì)算機(jī)信息,并創(chuàng)建對(duì)應(yīng)的用戶對(duì)象,然后保存到數(shù)據(jù)庫中。當(dāng)用戶單擊 “ 系統(tǒng)更新 ” 按鈕時(shí),該按鈕的事件監(jiān)聽器會(huì)下載當(dāng)前最新版本的 程序,然后更新相應(yīng)的標(biāo)簽控件提示用戶更新信息。為避免等待搜索用戶的業(yè)務(wù)邏 輯過長而導(dǎo)致程序界面死鎖,監(jiān)聽器創(chuàng)建了另一個(gè)線程來執(zhí)行用戶搜索的業(yè)務(wù)。 ( 7) 編寫更新程序的 updateProject()方法,在該方法中分別創(chuàng)建本地程序和服務(wù)器最新程序文件對(duì)象,然后解析兩個(gè)文件的最后 修改日期,如果服務(wù)器程序的最后修改日期比本地程序更新,那么獲取服務(wù)器文件的內(nèi)容并更新到本地文
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1