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

正文內(nèi)容

[精品論文]c圖書管理系統(tǒng)(編輯修改稿)

2024-10-20 12:24 本頁面
 

【文章內(nèi)容簡介】 在運(yùn)行過程中創(chuàng)建的資源隨著進(jìn)程的終止而被銷毀,所使用的系統(tǒng)資源在進(jìn)程終止時被釋放或關(guān)閉。 線程是進(jìn)程內(nèi)部的一個執(zhí)行單元。系統(tǒng)創(chuàng)建好進(jìn)程后,實際 上就啟動執(zhí)行了該進(jìn)程的主執(zhí)行線程,主執(zhí)行線程以函數(shù)地址形式,比如說 main 或 WinMain 函數(shù),將程序的啟動點提供給 Windows 系統(tǒng)。主執(zhí)行線程終止了,進(jìn)程也就隨之終止。 每一個進(jìn)程至少有一個主執(zhí)行線程,它無需由用戶去主動創(chuàng)建,是由系統(tǒng)自動創(chuàng)建的。用戶根據(jù)需要在應(yīng)用程序中創(chuàng)建其它線程,多個線程并發(fā)地運(yùn)行于同一個進(jìn)程中。一個進(jìn)程中的所有線程都在該進(jìn)程的虛擬地址空間中,共同使用這些虛擬地址空間、全局變量和系統(tǒng)資源,所以線程間的通訊非常方便,多線程技術(shù)的應(yīng)用也較為廣泛。 多線程可以實現(xiàn)并行處理,避免了某項任務(wù)長 時間占用 CPU 時間。要說明的一點是,目前大多數(shù)的計算機(jī)都是單處理器( CPU)的,為了運(yùn)行所有這些線程,操作系統(tǒng)為每個獨立線程安排一些 CPU 時間,操作系統(tǒng)以輪換方式向線程提供時間片,這就給人一種假象,好象這些線程都在同時運(yùn)行。由此可見,如果兩個非?;钴S的線程為了搶奪對 CPU 的控制權(quán),在線程切換時會消耗很多的 CPU 資源,反而會降低系統(tǒng)的性能。這一點在多線程編程時應(yīng)該注意。 多線程在構(gòu)建大型系統(tǒng)的時候是需要重點關(guān)注的一個重要方面,特別是在效率(系統(tǒng)跑得多快?)和性能(系統(tǒng)工作正常?)之間做一個權(quán)衡的時候。恰當(dāng)?shù)氖?用多線程可以極大的提高系統(tǒng)性能,當(dāng)有多個客戶端程序同時連接到服務(wù)器端的時候,用戶不希望等待其他用戶完成操作之后才享有 CPU 時間,因為這樣的 C/S 模式的管理系統(tǒng)將會變得毫無意義,為了滿足每一位用戶都能夠感覺到自己是獨占服務(wù)器 CPU 時間的,所以在該圖書管理系統(tǒng)中有必要也必須應(yīng)用到多線程編程,正因為多線程的并發(fā)行,使其處理客戶端的請求能夠達(dá)到同步C++圖書管理系統(tǒng) 8 的效果。因為多線程共享全局變量,所以在進(jìn)行多線程編程的時候要特別注意,當(dāng)訪問全局?jǐn)?shù)據(jù)的時候要用互斥鎖鎖住該變量,當(dāng)當(dāng)前線程使用完該變量的時候應(yīng)當(dāng)將其解鎖,一邊其它線程有機(jī) 會訪問該變量,以免造成死鎖的情況發(fā)生。 使用 MySQL 數(shù)據(jù)庫 因為本系統(tǒng)主要用到 MySQL 數(shù)據(jù)庫編程,所以詳細(xì)的介紹其使用方法。 Qt 數(shù)據(jù)庫連接類 QsqlDatabase 類是主要用于連接數(shù)據(jù)的類,該類封裝了連接各種數(shù)據(jù)的方法,在編譯并安裝好 Qt 相應(yīng)的數(shù)據(jù)庫驅(qū)動之后,只需要簡單的指定數(shù)據(jù)庫名字就能夠與相應(yīng)的數(shù)據(jù)庫建立連接,而應(yīng)用程序就能夠通過該連接句柄與數(shù)據(jù)庫進(jìn)行良好的互動。 QSqlQuery 類是主要用于數(shù)據(jù)庫操作,包括執(zhí)行相應(yīng)的 SQL 語句,獲取數(shù)據(jù)庫中的相應(yīng)數(shù)據(jù)。 數(shù)據(jù)庫 連接 在程序中定義 QSqlDatabase db 成員變量通過該變量可以獲取數(shù)據(jù)庫連接句柄, db = QSqlDatabase::addDatabase(QMYSQL)。//由于我們使用的 MySQL 數(shù)據(jù)庫,所以這里指定的數(shù)據(jù)庫名字是 QMYSQL。 (database)。 (localhost)。 (username)。 (password)。 if (!()) { QMessageBox::critical(0,QObject::tr(DatabaseError), ().text())。 return false。 } C++圖書管理系統(tǒng) 9 查詢記錄 查詢記錄使用 QSqlQuery:: exec(Qstring amp。)成員函數(shù)來執(zhí)行SQL 語句,一旦查詢到數(shù)據(jù)庫中有相關(guān)的記錄,就可以通過QSqlQuery:: isSelect() amp。amp。 QSqlQuery:: next()來一條一條獲取查詢的結(jié)果, QSqlQuery:: value(int column)獲取一行中指定列的記錄。 系統(tǒng)運(yùn)行環(huán)境 服務(wù)器軟硬件要求 軟件: Windows XP MySQL TCP/IP 協(xié)議 硬件: CPU:PⅢ 內(nèi)存: 256M 硬盤: 4G 以上 客戶端軟硬件要求 軟件: Windows 95/98/ME/2020/XP/WIN7 TCP/IP 協(xié)議 硬件: CPU:486/586 以及更高檔的 PC 內(nèi)存:最少 64M 硬盤: 500M 以上 C++圖書管理系統(tǒng) 10 3 需求分析 如同任何生物一 樣 ,軟件也有一個誕生、成長、衰亡的生存過程。我們稱為軟件的生存期。根據(jù)這一思想,可以得到軟件生存期六個步驟,即制定計劃、需求分析、軟件設(shè)計、程序編碼、測試及運(yùn)行維護(hù)。 軟件需求分析工作是軟件生存期中重要一步,也是決定性一步。只有通過需求分析才能把軟件功能和性能的總體要領(lǐng)描述為具體的軟件需求規(guī)程說明,從而奠定軟件開發(fā)的基礎(chǔ)。 圖 系統(tǒng)整體設(shè)計流程圖 功能需求 根據(jù)自己調(diào)查圖書館的業(yè)務(wù)情況,從實際應(yīng)用的角度出發(fā),確定為用戶提供和實現(xiàn)以下功能: (1) 登錄功能 (2) 讀者:主要提供直接查詢(包括模糊查詢)和多條件分類查需求分析 系統(tǒng)設(shè)計 系統(tǒng)編碼 系統(tǒng)測試 系統(tǒng)功能圖 功能分析 框架分析 系統(tǒng)功能 系統(tǒng)界面 畫出功能圖 測試系統(tǒng)的所有功能,達(dá)到預(yù)期效果 C++圖書管理系統(tǒng) 11 詢功能。 (3) 操作員:主要提供借書,還書,圖書管理。 (4) 管理員:主要提供圖書管理員登錄數(shù)據(jù)庫管理,圖書類管理,讀者管理逾期未還圖書的信息管理。 (5) 聯(lián)機(jī)幫助功能:能幫助用戶在最短的時間使用本系統(tǒng)。 功能介紹 圖 列出了這個系統(tǒng)各功能之間的關(guān)系 圖 系統(tǒng)功能圖 (1) 用戶登錄 只有已注冊用戶才能登陸系統(tǒng),為了滿足不同用的需求級別,用戶包括三種權(quán)限,系統(tǒng)管理員、 操作員、讀者,不同權(quán)限的用戶,其所能執(zhí)行的操作不相同,下面是用戶的相關(guān)權(quán)限。 讀者:登陸、注銷、退出、查詢與統(tǒng)計、修改密碼、幫助。 圖書管圖系統(tǒng) 系統(tǒng)管理 數(shù)據(jù)管理 借還系統(tǒng) 幫助 用戶登錄 添加用戶 刪除用戶 用戶注銷 退出系統(tǒng) 書籍管理 用戶管理 讀者管理 日志管理 修改密碼 借出圖書 歸還圖書 續(xù)借圖書 幫助文檔 關(guān)于 查詢統(tǒng)計 查詢用戶 圖書查詢 借出記錄 借閱統(tǒng)計 逾期記錄 修改資料 C++圖書管理系統(tǒng) 12 操作員:登陸、注銷、退出、書籍借出與歸還、修改密碼、幫助。 管理員:所有操作。 (2) 用戶管理 對用戶的相關(guān)操作,例如:添加新用戶、刪除用戶、查詢用戶、修改用戶資料。 添加新用戶:可以添加學(xué)生用戶、教師管理員、系統(tǒng)管理員。 查詢用戶:獲得用戶的相關(guān)資料。 修改用戶:修改用戶的注冊信息及其相關(guān),需要輸入要作修改的用戶的 ID 及其姓名,防止誤該。 (3) 修改密碼 任何用戶都可以修 改自己的登陸密碼,用戶需要輸入舊的密碼,新密碼需要輸入兩次,保證其安全性。 (4) 注銷用戶 用戶切換時必須進(jìn)行注銷,否則警告用戶已經(jīng)登錄。 (5) 正常退出系統(tǒng) (6) 添加圖書 當(dāng)有新書入庫的時候,需要將該書的相關(guān)資料加入到數(shù)據(jù)庫中,教師管理員和系統(tǒng)管理員都有執(zhí)行該操作的權(quán)限。 (7) 刪除圖書 當(dāng)學(xué)生報告書籍遺失或者很長時間未被歸還,視作該書籍已經(jīng)不存在,需要刪除其在數(shù)據(jù)庫中的相關(guān)記錄。 (8) 更新圖書 如果發(fā)現(xiàn)書籍的相關(guān)信息有誤,需要對該信息進(jìn)行修改,重新存入數(shù)據(jù)庫中,便于在書記查找的時候獲得的是 該書的正確信息。 (9) 借出圖書 當(dāng)有用戶要借書的時候,需要用戶提供書籍相關(guān)信息,管理員根據(jù)用戶提供的信息,搜索相關(guān)書籍,如果該書存在,可以進(jìn)行借出操作,如果不存在,就給出相關(guān)的提示,每位用戶所能借閱的圖書同時不能超過 4本,默認(rèn)借出最大天數(shù)為 30 天。 (10) 歸還圖書 (11) 續(xù)借圖書 C++圖書管理系統(tǒng) 13 用戶在規(guī)定的期限內(nèi),沒有看完書籍,需要進(jìn)行續(xù)借操作,續(xù)借的天數(shù)不能超過 30,否則算作逾期。 (12) 查詢與統(tǒng)計 查詢庫存的圖書:獲取未借出的圖書記錄。 借出記錄:獲得借出的圖書記錄,及其相關(guān)信息,波形圖可以直觀的顯示 一段時間內(nèi)借出圖書的數(shù)量,當(dāng)鼠標(biāo)移動到波形線上的時候,得到該段時間內(nèi)借出圖書的詳細(xì)信息,如:借閱者、書名、借出時間、是否逾期等等;表格形式則一表格的形式詳細(xì)的顯示圖書名、借閱者、借出時間、是否逾期,如果沒有預(yù)期則顯示借出的天數(shù),如果逾期需要突出的顯示出來并顯示預(yù)期作為提示。 讀者借閱統(tǒng)計:獲得所有用戶現(xiàn)有的圖書數(shù)量,將鼠標(biāo)移動到該數(shù)字上顯示所有借得的圖書的名字。 逾期借閱:獲得逾期借閱的圖書的相關(guān)信息,借閱者,具體借閱時間,超過的天數(shù)。 (13) 逾期借閱記錄 獲得借閱超時的所有書籍,顯示借閱者姓名,用戶 ID,書名,超時天數(shù)。 C++圖書管理系統(tǒng) 14 4 系統(tǒng)設(shè)計 系統(tǒng)總體設(shè)計 系統(tǒng)設(shè)計又稱系統(tǒng)物理設(shè)計。系統(tǒng)設(shè)計要根據(jù)系統(tǒng)分析報告中的系統(tǒng)邏輯模型綜合考慮各種約束,利用一切可利用的技術(shù)手段和方法進(jìn)行各種具體設(shè)計,確定新系統(tǒng)的實施方案,解決“系統(tǒng)怎么做”的問題。 結(jié)構(gòu)化系統(tǒng)設(shè)計是指利用一組標(biāo)準(zhǔn)的圖表工具和準(zhǔn)則,確定系統(tǒng)有哪些模塊,用什么方法連接,如何構(gòu)成良好的系統(tǒng)結(jié)構(gòu),并進(jìn)行系統(tǒng)輸入、輸出、數(shù)據(jù)處理、數(shù)據(jù)存儲等環(huán)節(jié)的詳細(xì)設(shè)計。這一階段的重點是設(shè)計好系統(tǒng)的總體結(jié)構(gòu),選擇最經(jīng)濟(jì)合理的技術(shù)手段。在軟件需求分析階段,已搞清了軟件“做 什么” 的問題,并描述出了系統(tǒng)的邏輯模型。在系統(tǒng)設(shè)計階段,主要要解決軟件“怎么做”的問題,所以需要描述軟件的總的體系結(jié)構(gòu)既系統(tǒng)總體結(jié)構(gòu)。 本系統(tǒng)是一個圖書管理系統(tǒng),那么它具備用戶登錄:讀者圖書查詢:管理員借還書,增加書:圖書超級管理員管理系統(tǒng)信息四大基本功能,從這個基本功能出發(fā),確定了本系統(tǒng)應(yīng)包含五個大模塊,即:登錄模塊,查詢模塊,借還書模塊,系統(tǒng)管理模塊 ,日志管理模塊。 數(shù)據(jù)庫簡介 計算機(jī)的數(shù)據(jù)處理應(yīng)用,首先要把大量的信息以數(shù)據(jù)形式存放君存儲器中。存儲器的容量、存儲速率直接影響到數(shù)據(jù)管理技術(shù)的 發(fā)展。 1956 年生產(chǎn)的第一臺計算機(jī)磁盤容量僅為 5M 字節(jié),而現(xiàn)在已達(dá)10000M 字節(jié)。目前光盤已經(jīng)廣泛使用,容量已達(dá)數(shù)百 G 字節(jié)。存儲器的發(fā)展,為數(shù)據(jù)庫技術(shù)提供了良好的物質(zhì)基礎(chǔ)。 使用計算機(jī)以后,數(shù)據(jù)處理的速度和規(guī)模,無論是相對于手工方式,還是機(jī)械方式,都是無可比擬的在數(shù)據(jù)處理中,通常計算是比較簡單的而數(shù)據(jù)的管理比較復(fù)雜。數(shù)據(jù)管理是指數(shù)據(jù)的收集、整理、組C++圖書管理系統(tǒng) 15 織、存儲、維護(hù)、檢索、傳送等操作,這部分操作是數(shù)據(jù)處理業(yè)務(wù)的基本環(huán)節(jié),而且是任何數(shù)據(jù)處理業(yè)務(wù)中必不可少的共有部分。數(shù)據(jù)管理技術(shù)的優(yōu)劣,將直接影響數(shù)據(jù)處理的效率。 數(shù)據(jù)管理技術(shù)的發(fā)展,與硬件(主要是外存)、軟件、計算機(jī)應(yīng)用的范圍有密切的聯(lián)系。數(shù)據(jù)管理技術(shù)的發(fā)展經(jīng)過三個階段:人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫階段。 從文件系統(tǒng)發(fā)展到數(shù)據(jù)庫系統(tǒng)是信息處理領(lǐng)域的一個重大變化。在文件系統(tǒng)階段,人們關(guān)注的中心問題是系統(tǒng)功能的設(shè)計,因而程序設(shè)計處于主導(dǎo)地位,數(shù)據(jù)只起著服從程序需要的作用。在數(shù)據(jù)庫方式下,信息處理觀念已為新體系所取代,數(shù)據(jù)占據(jù)了中心位置。數(shù)據(jù)結(jié)構(gòu)的設(shè)計成為信息系統(tǒng)首先關(guān)心的問題,而利用這些數(shù)據(jù)的應(yīng)用程序設(shè)計則退居到以既定的數(shù)據(jù)結(jié)構(gòu)為基礎(chǔ)的外圍地位。 數(shù)據(jù)庫技術(shù)還在 不斷的發(fā)展,并且不斷地與其它計算機(jī)技術(shù)相互滲透。數(shù)據(jù)庫技術(shù)與網(wǎng)絡(luò)通信技術(shù)相結(jié)合,產(chǎn)生了分布式數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)庫技術(shù)與面向?qū)ο蠹夹g(shù)相結(jié)合,產(chǎn)生了面向?qū)ο髷?shù)據(jù)庫系統(tǒng)。 在數(shù)據(jù)庫技術(shù)中有四個名詞 : (1) 數(shù)據(jù)庫( database, DB) : DB 是統(tǒng)一管理的相關(guān)數(shù)據(jù)的集合。 DB 能為各種用戶共享,具有最小冗余度,數(shù)據(jù)間聯(lián)系密切,而又有較高的數(shù)據(jù)獨立性。 (2) 數(shù)據(jù)庫管理系統(tǒng)( Database Management System, DBMS):DBMS 是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,為用戶或應(yīng)用程序提供訪問 DB 的方法,包括 DB 的建立、查詢、更新及各種數(shù)據(jù)控制。 DBMS 總是基于某種數(shù)據(jù)模型,可以分為層次型、網(wǎng)狀型、關(guān)系型和面向?qū)ο笮?DBMS。 (3) 數(shù)據(jù)庫系統(tǒng)( Database System, DBS) : DBS 是實現(xiàn)有組織地、動態(tài)地存儲大量關(guān)聯(lián)數(shù)據(jù),方便多用戶訪問的計算機(jī)軟件、硬件和數(shù)據(jù)資源組成的系統(tǒng),即采用了數(shù)據(jù)庫技術(shù)的計算機(jī)系統(tǒng)。 (4) 數(shù)據(jù)庫技術(shù):這是一門研究數(shù)據(jù)庫的結(jié)構(gòu)、存儲、管理和使用的軟件學(xué)科。數(shù)據(jù)庫技術(shù)是操作系統(tǒng)的文件系統(tǒng)基礎(chǔ)上
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1