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

正文內(nèi)容

web大作業(yè)圖書管理系統(tǒng)-資料下載頁

2025-01-20 20:43本頁面

【導(dǎo)讀】隨著近年來教育事業(yè)的蓬勃發(fā)展,各大高校的基礎(chǔ)建設(shè)不斷加強(qiáng)。設(shè)標(biāo)志性內(nèi)容的圖書館,也隨之不斷擴(kuò)大和加強(qiáng)。與此同時,為了使圖書館的功能得到充分。的發(fā)揮,迫切需要優(yōu)秀的管理軟件來維護(hù)圖書館的日常管理和運(yùn)營。本章所要介紹的開發(fā)案。例,就是一套JSP+MYSQL實現(xiàn)的圖書館管理系統(tǒng)??蛻糁g的理解分歧,確保最終開發(fā)出來的產(chǎn)品能夠滿足客戶的實際需要。人信息、查閱/查詢館藏書目信息。圖書借閱者的需求是查詢圖書館所存的。圖書館管理人員功能的信息量大,數(shù)據(jù)安全性和保密性要求最高。書借閱者基本信息記錄時,應(yīng)實現(xiàn)對該圖書借閱者借閱記錄的級聯(lián)刪除。根據(jù)借閱情況對數(shù)據(jù)庫進(jìn)行操作并生成報表。維護(hù)工作人員和管理員信息。對借閱過期的圖書生成報表。部分內(nèi)容的包含關(guān)系。在上圖中,還有一種<<depend>>關(guān)系,分別出現(xiàn)在“登陸/退出”用

  

【正文】 } catch (IOException e) { (無法打開日志文件 : + logFile)。 log = new PrintWriter()。 } loadDrivers()。 createPools()。 } /** * 裝載和注冊所有 JDBC 驅(qū)動程序 * * @param props 屬性 */ private void loadDrivers() { String driverClasses = 。 StringTokenizer st = new StringTokenizer(driverClasses)。 while(()) { String driverClassName = ().trim()。 try { Driver driver = (Driver) (driverClassName).newInstance()。 (driver)。 (driver)。 log(成功注冊 JDBC 驅(qū)動程序 + driverClassName)。 } catch(Exception e) { log(無法注冊 JDBC 驅(qū)動程序 : + driverClassName + , 錯誤 : + e)。 (\r\n 無法注冊 JDBC 驅(qū)動程序 : + driverClassName + , 錯誤 : + e)。 } } } /** * 將文本信息寫入日志文件 */ private void log(String msg) { (new Date() + : + msg)。 } /** * 將文本信息與異常寫入日志文件 */ private void log(Throwable e, String msg) { (new Date() + : + msg)。 (log)。 } /** * 此內(nèi)部類定義了一個連接池 .它能夠根據(jù)要求創(chuàng)建新連接 ,直到預(yù)定的最 * 大連接數(shù)為止 .在返回連接給客戶程序之前 ,它能夠驗證連接的有效性 . */ class DBConnectionPool { private int sum。 private int checkedOut。 private Vector freeConnections = new Vector()。 private int maxConn。 private int max。 private String name。 private String password。 private String URL。 private String user。 private int isNullPool。 private int isOracleErr 。 /** * 創(chuàng)建新的連接池 * * @param name 連接池名字 * @param URL 數(shù)據(jù)庫的 JDBC URL * @param user 數(shù)據(jù)庫帳號 ,或 null * @param password 密碼 ,或 null * @param maxConn 此連接池允許建立的最大連接數(shù) */ public DBConnectionPool(String name, String URL, String user, String password, int maxConn) { = name。 = URL。 = user。 = password。 = maxConn。 } /** * 將不再使用的連接返回給連接池 * * @param con 客戶程序釋放的連接 */ public synchronized void freeConnection(Connection con) { if(con!=null) { // 將指定連接加入到向量末尾 (con)。 checkedOut。 } notifyAll()。 } /** * 從連接池獲得一個可用連接 .如沒有空閑的連接且當(dāng)前連接數(shù)小于最大連接 * 數(shù)限制 ,則創(chuàng)建新連接 .如原來登記為可用的連接不再有效 ,則從向量刪除之 , * 然后遞歸調(diào)用自己以嘗試新的可用連接 . */ public synchronized Connection getConnection() { Connection con = null。 if(() 0) { // 獲取向量中第一個可用連接 con = (Connection)()。 (0)。 try { if(()) { log(從連接池 + name + 刪除一個無效連接 )。 // 遞歸調(diào)用自己 ,嘗試再次獲取可用連接 con = getConnection()。 } } catch(SQLException e) { log(從連接池 + name + 刪除一個無效連接 )。 // 遞歸調(diào)用自己 ,嘗試再次獲取可用連接 con = getConnection()。 } } else if(maxConn == 0 || checkedOut maxConn) { con = newConnection()。 } else { //( 連接池取空 ,等待回收 !)。 isNullPool++ 。 } if(con != null) { checkedOut++。 sum++。 } return con。 } /** * 從連接池獲取可用連接 .可以指定客戶程序能夠等待的最長時間 * 參見前一個 getConnection()方法 . * * @param timeout 以毫秒計的等待時間限制 */ public synchronized Connection getConnection(long timeout) { long startTime = new Date().getTime()。 Connection con。 while( (con = getConnection()) == null) { try { wait(timeout)。 } catch(InterruptedException e) {} if( (new Date().getTime() startTime) = timeout) { // wait()返回的原因是超時 return null。 } } return con。 } /** * 關(guān) 閉所有連接 */ public synchronized void release() { Enumeration allConnections = ()。 while(()) { Connection con = (Connection)()。 try { ()。 log(關(guān)閉連接池 + name + 中的一個連接 )。 } catch(SQLException e) { log(e, 無法關(guān)閉連接池 + name + 中的連接 )。 } } ()。 } /** * 創(chuàng)建新的連接 */ private Connection newConnection() { Connection con = null。 try { if(user == null) { con = (URL)。 } else { con = (URL, user, password)。 } max++。 log(連接池 + name + 創(chuàng)建一個新的連接 )。 } catch(SQLException e) { //以下注釋實在數(shù)據(jù)庫連接調(diào)試正常的情況下,因為以下的情況概率最大,所以沒有提示連接地址錯誤 log(e, Oracle 來不及響應(yīng) ,無法創(chuàng)建下列 URL 的連接 : + URL)。 //( Oracle 來不及響應(yīng) !)。 isOracleErr ++ 。 return null。 } return con。 } public int getCurConns() { return checkedOut。 } public int getSumConns() { return sum 。 } public int getMaxConns() { return max。 } public int getNullPool() { return isNullPool。 } public int getOracleErr() { return isOracleErr 。 } } } . 小結(jié) 本章 講述了一個圖書館管 理系統(tǒng)的開放設(shè)計過程,詳細(xì)的講述了以下 五 個方面的內(nèi)容: 1. 需求分析:在需求分析中,我們詳細(xì)講述了需求的收集、需求的分析以及如何從需求當(dāng)中提取系統(tǒng)的功能。需求分析是系統(tǒng)開放的第一步,關(guān)系到整個系統(tǒng)的建設(shè)目標(biāo),所以需要仔細(xì)認(rèn)真的對待。在實際的開放過程當(dāng)中,應(yīng)當(dāng)給出 系統(tǒng)的需求規(guī)格說明書以作為以后 系統(tǒng)驗收的依據(jù)。限于篇幅,本書中就不再介紹。 2. 概要設(shè)計:概要設(shè)計的工作就是設(shè)計系統(tǒng)的大體框架,包括對系統(tǒng)的用例分析,領(lǐng)域分析和關(guān)鍵用例的流程分析。 用例是系統(tǒng)中需要實現(xiàn)的功能模塊,不同的用例可能歸屬于不同的角色。比如在本章中, 角色就可以劃分為管理員,工作人員和讀者三類,不同類別的角色啟動不同的用例以 完成 各自的 功能需求。 3. 數(shù)據(jù)庫設(shè)計:在數(shù)據(jù)庫設(shè)計部分,我們簡單講述了如何分析系統(tǒng)的數(shù)據(jù)關(guān)系,以及如何使用 MYSQL為系統(tǒng)建立數(shù)據(jù)庫。數(shù)據(jù)庫設(shè)計的基礎(chǔ)是對系統(tǒng)的領(lǐng)域分析,由此也可以看到軟件的開放過程是環(huán)環(huán)相扣的。 4. 用戶界面設(shè)計:本章從界面的功能和元素 出發(fā)講述了如何設(shè)計整潔、美觀的界面 ,優(yōu)秀的界面設(shè)計 有助于推動系統(tǒng)的應(yīng)用。 5. 代碼實現(xiàn):本章中詳細(xì)講述了圖書館管理系統(tǒng)中 的書籍管理功能的 實現(xiàn),尤其是其中的數(shù)據(jù)庫連接的方法。在 JSP 系統(tǒng)中,數(shù)據(jù)庫連 接是一個非常重要的內(nèi)容。 本章中講述的圖書館管理系統(tǒng)的代碼在隨書附帶的光盤中可以找到,如果需要了解其它方面的內(nèi)容,可以 詳細(xì) 參閱其中的代碼。 歡迎下載資料,下面是附帶送個人簡歷資料用不了的話可以自己編輯刪除,謝謝!下面黃顏色背景資料下載后可以編輯刪除 X X X 個 人 簡 歷 個人資料 姓 名: xxxx 婚姻狀況:未婚 照片 出 生: 19870624 政治面貌 :團(tuán)員 性 別:男 民 族:漢 學(xué) 位:本科 移動電話: 專 業(yè):英語 電子郵件: 地 址: 教育背景 吉林工程技術(shù)師范學(xué)院 外國語言文學(xué)系 主修課程 本科階段主修 大學(xué)英語精讀,大學(xué)英語泛讀,英語口語,英語聽力,英語寫作, 英語口譯, 翻譯學(xué),詞匯學(xué),語法學(xué),英美概況,英國文學(xué),美國文學(xué),語言學(xué),日語,中外名勝。 特長及興趣愛好 除了有專業(yè)的英語方面知識外,我在校生活部工作一年 , 在系宣傳部和秘書處各工作一年
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1