【正文】
要一份 Servlet 類代碼。因 為是對(duì)象字節(jié)碼,可動(dòng)態(tài)地從網(wǎng)絡(luò)加載,可以說(shuō) Servlet 對(duì) Server 就如同 Applet 對(duì) Client 一樣,但是,由 于 Servlet運(yùn)行于 Server 中,它們并不需要一個(gè)圖形用戶界面。在通信量大 的服務(wù)器上, Java servlet 的優(yōu)點(diǎn)在于它們的執(zhí)行速度更快于 CGI 程序。在 Web 應(yīng)用中,用戶輸入包括對(duì) Web級(jí)資源的 HTTP、 GET 和 POST 請(qǐng)求。 模型部分代表了商業(yè)數(shù)據(jù)的訪問(wèn)及修改數(shù)據(jù)的操作。 對(duì)象 exception 對(duì)象是一個(gè)例外對(duì)象,當(dāng)一個(gè)頁(yè)面在運(yùn)行過(guò)程中發(fā)生了例外,就產(chǎn)生這個(gè)對(duì)象。它是 HttpServletRequest 類的實(shí)例。在這種情況下, WebSphere 應(yīng)用服務(wù)器 將檢測(cè)所做的更新,并在執(zhí)行它之前重新生成和編譯 Servlet。用 JSP 訪問(wèn)可重用的組件,如 Servlet、 JavaBean 和基于 Java 的 Web 應(yīng)用程序。 第四,便于數(shù)據(jù)庫(kù)移植。 與傳統(tǒng)的 C/ S 體系結(jié)構(gòu)相比,三層體系結(jié)構(gòu)存在以下優(yōu)點(diǎn): (1) 客戶端零維護(hù) 在三層體系結(jié)構(gòu)中,幾乎所有的業(yè)務(wù)處理都是在中間件 Web Server上完成的,客戶端只需要安裝支持 Java 的瀏覽器即可,不用做任何其它安裝和配置工作,所以也就不存在客戶端維護(hù)的問(wèn)題,真正實(shí)現(xiàn)了 “ 客戶端 零維護(hù) ” 。服務(wù)器主要是運(yùn)行客戶機(jī)不能完成或費(fèi)時(shí)的工作,比如大型數(shù)據(jù)庫(kù)的管理,而客戶機(jī)可以通過(guò)預(yù)先指定的語(yǔ)言向服務(wù)器提出請(qǐng)求,要求服務(wù)器去執(zhí)行某項(xiàng)操作,并將操作結(jié)果返送給客戶 機(jī)。實(shí)際上指浪費(fèi)時(shí)間毫無(wú)疑義的錯(cuò)著。對(duì)局中成功的某一步。布局階段大體為七至十幾著之內(nèi)。一般是有兩個(gè)沖四活三點(diǎn),白棋的雙活三,雙四均可稱為一子雙殺。絕對(duì)先手又叫“沖”。 同意和局提議,判定為平局。 ,在盤(pán)上落下的子又拿起來(lái),此動(dòng)作稱為拔子,若拔子將羅友:基于 Web 的 JAVA 五子棋對(duì)弈程序的設(shè)計(jì)與實(shí)現(xiàn) 第 24 頁(yè) 共 47 頁(yè) 被判為負(fù)。 五子棋相關(guān)規(guī)則 ,黑棋先下第一子,由天元開(kāi)始,后白棋在黑棋周?chē)姆娇虻穆渥印? 6. 當(dāng)任何一 方有五個(gè)棋子沿著橫,豎,斜連在一起時(shí),系統(tǒng)自動(dòng)判斷贏棋,并顯示黑方或白方勝利。 ,是的話提醒相應(yīng)玩家獲勝,不是的話,更換玩家下棋。 悔棋功能:這個(gè)功能也是根據(jù)游戲的實(shí)際需求而存在的,在現(xiàn)實(shí)生活中難免有失誤下錯(cuò)了棋,那么就需要悔棋。由于其經(jīng)典性及其游戲的簡(jiǎn)單性,各類人士都可以也都愛(ài)玩。用戶密碼用于登錄本系統(tǒng),用戶權(quán)限是整數(shù), 1代表普通用戶,既可以通過(guò)注冊(cè)的用戶; 0 代表系統(tǒng)用戶,是系統(tǒng)自帶的不可以通過(guò)注冊(cè)獲得。 ( 6)管理普通用戶:可以對(duì)普通用戶進(jìn)行添加和刪除。 ( 3)玩五子棋:用戶在點(diǎn)擊 playgame 后會(huì)進(jìn)入游戲界面玩游戲。因此,系統(tǒng)的軟件開(kāi)發(fā)平臺(tái)已成熟可行。這次畢業(yè)設(shè)計(jì),正好將學(xué)過(guò)的 Java 語(yǔ)言中的各種技術(shù)綜合起來(lái),用 myeclipse 開(kāi)發(fā)工具編寫(xiě)一個(gè)小游戲,既對(duì)自己學(xué)過(guò)的技能進(jìn)行一次檢驗(yàn),也能系統(tǒng)地將學(xué)過(guò)的知識(shí)復(fù)習(xí)鞏固。s hightech development projects invested tremendous human and material resources. Manmachine chess puter is one of them. As a human study of an important branch of intelligence, the puter game to test the level of an important aspect of the manual. Its research in artificial intelligence has resulted in many important methods and theories to produce a wide range of social impact and academic impact. Manmachine chess game Renju in one of the puter. To study the puter algorithm, we can see the beginning of artificial intelligence shadow, but also help us to human brain development. Backgammon invented in China, and the research it can allow more 99 級(jí)信息與計(jì)算科學(xué)畢業(yè)論文 第 III 頁(yè) 共 47 頁(yè) foreigners to understand and help to promote China39。 計(jì)算機(jī)人機(jī)對(duì)弈也是其中之一。目前各發(fā)達(dá)國(guó)家都把人工智能作為重點(diǎn)項(xiàng)目,列入本國(guó)的高科技發(fā)展計(jì)劃當(dāng)中,投入巨大的人力和物力。JSP II JAVA renju play chess program design and implementation Based on Web Chongqing Three Ges University, Wanzhou, Chongqing 404000 ) Abstract: Artificial intelligence is a rapidly developing new, integrated a strong Frontier Science. It is with bioengineering, space technology has been listed as 21 in the world along with the three cuttingedge technology. Its central task is to study how to make the puter do that in the past to rely on human intelligence to do. AI is currently regarded as the focus of the developed countries included in this car39。 我作為一名學(xué)生,在系統(tǒng)的學(xué)習(xí)了 Java 語(yǔ)言之后, 經(jīng)常用它搞一些小程序。該系統(tǒng)采用的簡(jiǎn)單的二層結(jié)構(gòu),數(shù)據(jù)庫(kù)選用MySQL,它相對(duì)于其他的數(shù)據(jù)庫(kù)來(lái)說(shuō) ,安裝簡(jiǎn)單,靈活性、安全性和易用性為數(shù)據(jù)庫(kù)編程提供了良好的條件。 ( 2)棋局回放:用戶根據(jù)自己的需求回放自己以前下過(guò)的棋局。 ( 5)更改密碼:用戶可以根據(jù)自己的需求更改自己的密碼。 定義:用戶名 +用戶密碼 +用戶權(quán)限 位置:數(shù)據(jù)庫(kù)用戶信息表( UserInfo) 描述:用與儲(chǔ)存用戶信息,其中有用戶名,當(dāng)用戶登錄后會(huì)在用戶首頁(yè)上顯示。數(shù)據(jù)流圖(圖 34)如下: 4 JAVA 五子棋對(duì)弈系統(tǒng)分析與設(shè)計(jì) 此系統(tǒng)為智力游戲,適合于各類游戲愛(ài)好者。 人機(jī)對(duì)弈模式:選擇該模式可以實(shí) 現(xiàn)人與電腦之間的對(duì)弈,電腦會(huì)智能的選擇該在哪處下子,并會(huì)在每次下棋結(jié)束后判斷是否有哪方已經(jīng)獲勝,如果獲勝則結(jié)束本局游戲,并提示玩家游戲結(jié)束。 ,如果有則用 javascript 提示玩家重新下子,否則通過(guò) ajax 把點(diǎn)擊的數(shù)組傳遞給后臺(tái),通過(guò)后臺(tái)處理返回給前臺(tái)2020 屆計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)畢業(yè)設(shè)計(jì)(論文) 第 15 頁(yè) 共 47 頁(yè) 數(shù)據(jù)來(lái)改變樣式,在此處畫(huà)上棋子。 5. 當(dāng)用戶點(diǎn)擊表格中的層下完棋后,輪到電腦下子時(shí),電腦會(huì)通過(guò)算法計(jì)算每個(gè)沒(méi)有棋子的位置的重要性來(lái)選擇最重要的位置下子。捷克語(yǔ) piskvorky,韓語(yǔ) omok、韓國(guó)人還稱之為情侶棋。 ,因黑方已連成五即黑方已獲勝,故禁手規(guī)則失效。 。 :相對(duì)先手而言,即形成同色連四或嵌五,對(duì)方必須應(yīng)著,就是絕對(duì)先手。 :是指對(duì)局中一方落子后出現(xiàn)兩個(gè)叫殺點(diǎn)即兩個(gè)獲勝點(diǎn),而使對(duì)方無(wú)法防守的情形。 14. 開(kāi)局:也稱“布局”。 18. 好著:也稱“佳著”。對(duì)局中不起作用的著法。 客戶機(jī)和服務(wù)器分別工作在不同的邏輯實(shí)體中,并協(xié)同工作。用戶可以通過(guò)這些動(dòng)態(tài)頁(yè)面向數(shù)據(jù)庫(kù)中輸入信息,從而增強(qiáng)了用戶和服務(wù)器之間的交互性。 第三,業(yè)務(wù)邏輯與用戶界面及數(shù)據(jù)庫(kù)分離,使得當(dāng)用戶業(yè)務(wù)邏輯發(fā)生變化時(shí)只需更改中間層的控件/組件/ JB/ EJB 即可。在 JSP 的眾多優(yōu)點(diǎn)之中,其中之一是它能將 HTML 編碼從 Web 頁(yè)面的業(yè)務(wù)邏輯中有效地分離出來(lái)。 Java 源文件的生成和編譯僅在初次調(diào)用 Servlet 時(shí)發(fā)生,除非已經(jīng)更新了原始的 JSP 文件。 圖 63:發(fā)送至 Servlet 的請(qǐng)求 羅友:基于 Web 的 JAVA 五子棋對(duì)弈程序的設(shè)計(jì)與實(shí)現(xiàn) 第 32 頁(yè) 共 47 頁(yè) JSP 內(nèi)建對(duì)象 定義:可以不加聲明就在 JSP 頁(yè)面 腳本 ( Java 程序片和 Java 表達(dá)式)中使用的成員變量 JSP 共有以下 9 種基本內(nèi)置組件(可與 ASP 的 6 種內(nèi)部組件相對(duì)應(yīng)): 客戶端的請(qǐng)求信息被封裝在 request 對(duì)象中,通過(guò)它才能了解到客戶的需求,然后做出響應(yīng)。它是ServletContext類的實(shí)例。保持這種分離性通常是面向?qū)ο缶幊毯驮O(shè)計(jì)要追求的目標(biāo),讓各個(gè)對(duì)象只需專注于自己的事務(wù)。分發(fā)用戶請(qǐng)求和選擇表現(xiàn)視圖,還負(fù)責(zé)解釋用戶輸入,進(jìn)而調(diào)用模型的功能。然而,在服務(wù)器上運(yùn)行 Java,這種程序可使用 Java 編程語(yǔ)言實(shí)現(xiàn)。 Servlet 導(dǎo)入特定的屬于Java ServletAPI 的包。而在 Servlet 中,每個(gè)請(qǐng)求由一個(gè)輕量級(jí)的 Java 線程處理 (而不是重量級(jí)的操作系統(tǒng)進(jìn)程 )。因此,為 IPla Enterprise Server 寫(xiě)的 Servlet 無(wú)需任何實(shí)質(zhì)上的改動(dòng)即可移植到Apache、 Microsoft IIS 或者 WebStar。 MySQL 的 SQL“ 結(jié)構(gòu)化查詢語(yǔ)言 ” 。 跨平臺(tái)支持: MySQL 可用于 20 多種不同的平臺(tái),包括主要的 Linux 系統(tǒng)、 Mac OS X、 Unix 和 Microsoft Windows。 開(kāi)發(fā)源碼許可證 —— 對(duì)于那些進(jìn)行開(kāi)放源碼應(yīng)用程序的開(kāi)發(fā)人員而言,可以將其軟件在一個(gè)開(kāi)放源碼 /免費(fèi)許可證方案下進(jìn)行發(fā)布,其他人員可以對(duì)其進(jìn)行使 用、修改或免費(fèi)發(fā)布。不過(guò), Tomcat 處理靜態(tài) HTML 的能力不如 Apache 服務(wù)器。 打開(kāi) 文件中的 bin 文件,雙擊其中的運(yùn)行程序,顯示 server start,服務(wù)器正常啟動(dòng) ,此時(shí)在瀏覽器上敲入本地測(cè)試地址: 如果出現(xiàn) Tomcat 頁(yè)面則證明 Tomcat 安裝成功,而且正常啟動(dòng)。詳細(xì)源代碼見(jiàn)附件 4 8 JAVA 五子棋對(duì)弈程序 設(shè)計(jì)的技術(shù)關(guān)鍵 javascript 中 AJAX 技術(shù) AJAX 指異步 JavaScript 及 XML( Asynchronous JavaScript And XML)。 本系統(tǒng)的 ajax 代碼如下: var xml。在基于數(shù)據(jù)的應(yīng)用中,用戶需求的數(shù)據(jù)如聯(lián)系人列表,可以從獨(dú)立于實(shí)際網(wǎng)頁(yè)的服務(wù)端取得并且可以被動(dòng)態(tài)地寫(xiě)入網(wǎng) 頁(yè)中,給緩慢的 Web 應(yīng)用體驗(yàn)著色使之像 桌面 應(yīng)用一樣。 源代碼見(jiàn)附件 2 用戶玩游戲流程 在用戶進(jìn)入游戲界面時(shí),本款游戲已經(jīng)開(kāi)始,用戶先下子,根據(jù)棋盤(pán)上方的提示進(jìn)行就可以了, 只要鼠標(biāo)點(diǎn)擊方框即可下子,本游戲是事件驅(qū)動(dòng)。還需要在 Path 變量值后面添加一個(gè)值: C:\\bin。對(duì)于一個(gè)初學(xué)者 來(lái)說(shuō),可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好 Apache 服務(wù)器,可利用它響應(yīng)對(duì) HTML 頁(yè)面的訪問(wèn)請(qǐng)求。無(wú)論選擇哪一種,您都將會(huì)享受到 MySQL 數(shù)據(jù)庫(kù)所帶來(lái)的巨大優(yōu)勢(shì),它能夠顯著降低您的總成本。 MYSQL 優(yōu)勢(shì) 可靠性和性能: MySQL AB 向公眾提供所有數(shù)據(jù)庫(kù)服務(wù)器軟件的早期版本,利用開(kāi)發(fā)源碼進(jìn)行為期幾個(gè)月的測(cè)試,之后才發(fā)布作為生產(chǎn)之用。在 2020 年 1 月 16 號(hào)被 Sun 公司收購(gòu)。 * 功能強(qiáng)大 在 Servlet 中,許多使用傳統(tǒng) CGI 程序很難完成的任務(wù)都可以輕松地完成。雖然 servlet 可以對(duì)任何類型的請(qǐng)求產(chǎn)生響應(yīng),但通常只用來(lái)擴(kuò)展Web 服務(wù)器的應(yīng)用程序。此后,一些其它的基于 Java 的 WebServer 開(kāi)始支持標(biāo)準(zhǔn)的 ServletAPI。 Servlet Servlet 簡(jiǎn)介 servlet 是在服務(wù)器上運(yùn)行的小 程序 。 視圖部分以自己的方式顯示模型的內(nèi)容。 對(duì)象 羅友:基于 Web 的 JAVA 五子棋對(duì)弈程序的設(shè)計(jì)與實(shí)現(xiàn) 第 34 頁(yè) 共 47 頁(yè) config 對(duì)象是在一個(gè) Servlet 初始化時(shí), JSP 引擎向它傳遞信息用的,此信息包括 Servlet 初始化時(shí)所要用到的參數(shù)(通過(guò)屬性名和屬性值構(gòu)成)以及服務(wù)器的有關(guān)信息(通過(guò)傳遞一個(gè) ServletContext 對(duì)象) MVC 設(shè)計(jì)模式 MVC 模式的基本形式圖如圖 64 所示。