網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn).doc_第1頁
網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn).doc_第2頁
網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn).doc_第3頁
網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn).doc_第4頁
網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn).doc_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

7、百錢百雞a 公雞3元 b母雞5元 c小雞3只1元public class Chicken public static void main(String args) int a,b,c,d=1; for(a=0;a=33;a+) for(b=0;b=19;b+) for(c=0;c=99;c+) if(c%3=0&c=100-a-b&c=3*(100-3*a-5*b) System.out.println(第+d+種方案:Cock is: + a + Hen is: + b + Chick is: + c); d+; 8、水仙花數(shù)public class Sxhpublic static void main(String args)int a,b,c;for(int i=100;i=9999;i+)a=i/100;b=(i%100)/10;c=(i%100)%10;if(i=a*a*a+b*b*b+c*c*c)System.out.println(i);9、楊輝三角class Pascal static long combi(int n, int r) int i; long p = 1; for(i = 1; i = r; i+) p = p * (n-i+1) / i; return p; public static void main(String args) final int N = 12; int n,k; for(n=0;nN;n+) for(k=0;kc & b+ca & a+cb) System.out.println(可以構(gòu)成三角形); /半周長 double ss = (a + b + c) / 2; /面積 double sss = Math.sqrt(ss*(ss-a)*(ss-b)*(ss-c); System.out.println(面積為:+sss); else System.out.println(不可以構(gòu)成三角形!); 11、設(shè)計要求:1. 用戶輸入一個整數(shù),程序判斷是否是素數(shù),并給出結(jié)果2. 用戶輸入一個整數(shù)范圍,程序列出該范圍內(nèi)的所有素數(shù)設(shè)計思路:判斷素數(shù)方法:要判斷一個整數(shù)N是否是素數(shù)只要判定在2到 之間是否有因子就可以了,將N對1到 循環(huán)取模,若不為零則表示此數(shù)是素數(shù),否則不是素數(shù)。運用java.io包中的BufferedReader類接收用戶的整數(shù)輸入,所以首先創(chuàng)建一個BufferedReader實例。import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class T2 public static void main(String args) new T2().judge1(); new T2().judge2(); public void judge1() BufferedReader br = new BufferedReader(new InputStreamReader(System.in); try System.out.println(請輸入一個數(shù)字); String str = br.readLine(); int a = Integer.parseInt(str); if(isPrimes(a) System.out.println(a+ 是素數(shù)); else System.out.println(a+ 不是素數(shù)); catch(NumberFormatException e) System.out.println(只能是數(shù)字); judge1(); catch (IOException e) System.out.println(讀取出錯了); private void judge2() BufferedReader br = new BufferedReader(new InputStreamReader(System.in); try System.out.println(請輸入兩個數(shù)用,號隔開(一個范圍)); String str = br.readLine(); String s = str.split(,); int a = Integer.parseInt(s0); int b = Integer.parseInt(s1); isPrimes2(a, b); catch(NumberFormatException e) System.out.println(格式不正確); judge2(); catch (IOException e) System.out.println(讀取出錯了); private void isPrimes2(int a, int b) System.out.println(a+-+b+范圍的素數(shù)有:); for(int i=a;i=b;i+) if(isPrimes(i) System.out.print(i+,); public static boolean isPrimes(int n) for (int i = 2; i = Math.sqrt(n); i+) if (n % i = 0) return false; return true; 網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn) 利用建立網(wǎng)站比較流行Java技術(shù)和開發(fā)環(huán)境,設(shè)計和實現(xiàn)基于三層體系結(jié)構(gòu)的開放的、網(wǎng)絡(luò)化的選課系統(tǒng)。使用技術(shù):三層體系結(jié)構(gòu);樹形結(jié)構(gòu);數(shù)據(jù)庫;JSP;本系統(tǒng)是應(yīng)用JSP和數(shù)據(jù)庫技術(shù)相結(jié)合開發(fā)的一套相對通用的學(xué)生網(wǎng)上選課系統(tǒng),以實現(xiàn)學(xué)校各院系學(xué)生選課的信息化和自動化。(1)網(wǎng)上選課系統(tǒng)的體系結(jié)構(gòu)設(shè)計 由于網(wǎng)上選課的網(wǎng)絡(luò)用戶較多,為了提高系統(tǒng)的安全性和訪問效率,整個系統(tǒng)采用客戶層,中間層和數(shù)據(jù)層三層體系結(jié)構(gòu)開發(fā)。 網(wǎng)上選課系統(tǒng)的三層體系結(jié)構(gòu),客戶層(客戶端),中間層(應(yīng)用服務(wù)器),數(shù)據(jù)層; 客戶層(客戶端)又叫應(yīng)用界面層,為用戶提供應(yīng)用界面,該層一方面向用戶呈現(xiàn)信息和收集用戶信息,另一方面可以對用戶信息進行基本的處理并與中間層進行交互。 中間層根據(jù)應(yīng)用的不同,有時稱為應(yīng)用服務(wù)器(application server),有時稱為Web服務(wù)器(Web server)。它保存了用于訪問數(shù)據(jù)庫服務(wù)器中數(shù)據(jù)的業(yè)務(wù)規(guī)則(過程或約束),另外在將一個客戶請求轉(zhuǎn)發(fā)給數(shù)據(jù)庫服務(wù)器之前,這個中間服務(wù)器會先檢查客戶的憑證,以此增強數(shù)據(jù)庫的安全性。中間服務(wù)器接收來自客戶的請求,處理這些請求,并向數(shù)據(jù)庫服務(wù)器發(fā)送數(shù)據(jù)庫命令,然后作為一個通道將來自數(shù)據(jù)庫服務(wù)器的(部分)經(jīng)過處理的數(shù)據(jù)傳遞至客戶,在此數(shù)據(jù)可能會進一步處理和過濾,并以圖形界面的形式提供給客戶。數(shù)據(jù)層是三層模式中最底層,負責(zé)儲存、管理數(shù)據(jù),該層通過SQL SERVER數(shù)據(jù)訪問接口組件來實現(xiàn)對各個類的數(shù)據(jù)訪問操作。 (2)、網(wǎng)上選課系統(tǒng)的實現(xiàn) JSP是JavaServer Pages的簡寫。JSP是基于Java Servlet以及整個Java體系的Web開發(fā)技術(shù),利用這一技術(shù)可以建立先進、安全、快速和跨平臺的動態(tài)網(wǎng)站。在傳統(tǒng)的網(wǎng)頁HTML文件中加入Java程序片段和JSP標(biāo)記,就構(gòu)成了JSP網(wǎng)頁。Web服務(wù)器接收到訪問JSP網(wǎng)頁的請求時,首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTML格式返回給客戶。程序片段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁等。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,對客戶瀏覽器的要求很低。在用戶連接JSP網(wǎng)站時,用戶請求網(wǎng)頁,JSP頁面獨自響應(yīng)請求,將用戶對網(wǎng)頁的請求轉(zhuǎn)化為對數(shù)據(jù)的請求,通過JavaBean處理并將返回的數(shù)據(jù)封裝成HTML頁面返回給用戶。 系統(tǒng)前臺用戶動態(tài)頁面使用JSP和Servlet在瀏覽器上實現(xiàn),中間層的企業(yè)業(yè)務(wù)邏輯使用EJB組件實現(xiàn),后臺數(shù)據(jù)庫使用MS SQL Server 2000數(shù)據(jù)庫服務(wù)器。 用戶可以直接通過Web瀏覽器訪問Web Server使用網(wǎng)上選課系統(tǒng)。系統(tǒng)的首頁就是用戶登錄界面,是系統(tǒng)的入口。不同用戶登錄系統(tǒng)時首先選擇對應(yīng)的用戶類型,然后輸入用戶名和密碼,驗證成功后轉(zhuǎn)向不同的頁面。系統(tǒng)涉及到的頁面有管理員管理首頁,管理員管理學(xué)生、教師、課程以及班級的界面;學(xué)生選課界面、查看成績界面,教師公布成績界面等。這些頁面都是用JSP和servlet完成對中間邏輯層的調(diào)用,把處理后的結(jié)果匯集客戶端,在瀏覽器上顯示。 在業(yè)務(wù)邏輯處理上,對各個業(yè)務(wù)進行相應(yīng)的分解,然后針對每個業(yè)務(wù)邏輯應(yīng)用EJB組件進行實現(xiàn)。這些組件中包括對各個類(用Java語言編寫)的定義,如在用戶登錄過程中,因為在整個客戶端使用的用戶比較多,每個用戶使用都需要與數(shù)據(jù)庫連接,因此定義了整個系統(tǒng)與數(shù)據(jù)庫的連接和關(guān)閉操作的類,以供調(diào)用;又如驗證用戶身份功能類、教師管理類、學(xué)生管理類、班級管理類、課程管理類等,并且每一個類可以與后臺數(shù)據(jù)庫連接,以實現(xiàn)對相應(yīng)數(shù)據(jù)表操作的業(yè)務(wù)邏輯功能。 在三層體系結(jié)構(gòu)中,幾乎所有的業(yè)務(wù)處理都是在中間層完成的,采用面向?qū)ο蟮姆治龊驮O(shè)計模式,將業(yè)務(wù)模塊都封裝到了業(yè)務(wù)類和服務(wù)類中,所以如果一個業(yè)務(wù)流程變了,或需要增加一個新的業(yè)務(wù)模塊,只需替換或增加新的業(yè)務(wù)類和服務(wù)類即可。 (3)、結(jié)語 JSP技術(shù)可以建立動態(tài)、安全穩(wěn)定、跨平臺、性能強大且易于擴展和維護的網(wǎng)絡(luò)應(yīng)用系統(tǒng)。系統(tǒng)充分利用了Java的技術(shù)優(yōu)勢,并結(jié)合三層體系結(jié)構(gòu)的應(yīng)用模型設(shè)計開發(fā)了網(wǎng)上選課系統(tǒng)。實踐證明,基于三層體系結(jié)構(gòu)的網(wǎng)上選課系統(tǒng),具有較好的靈活性、可重用性、擴展性和安全性,大大提高了開發(fā)效率。另外,學(xué)生選課管理是學(xué)校教務(wù)管理工作的重要組成部分,使用網(wǎng)上選課系統(tǒng)對選課及成績信息進行管理,可以實現(xiàn)集中管理、分散操作,提高工作的效率,減少或避免各種差錯和弊病,增加信息的準(zhǔn)確性,使學(xué)校選課和成績管理走向科學(xué)化、正規(guī)化。Javascript的優(yōu)點:1,在JavaScript這樣的用戶端腳本語言出現(xiàn)之前,傳統(tǒng)的大數(shù)據(jù)量的提交與驗證,都要由用戶端瀏覽器通過網(wǎng)絡(luò)傳輸?shù)椒?wù)器上進行,這對網(wǎng)絡(luò)和服務(wù)器來說實在是一種無形的浪費,而JavaScript的出現(xiàn)解決了這一問題,客戶端可由JavaScript實現(xiàn)自動的驗證;2,JavaScript可根據(jù)用戶的需要“定制”瀏覽器,從而使網(wǎng)頁更加友好;它采用小程序段的方式實現(xiàn)編程。像其它腳本語言一樣,Javascript同樣已是一種解釋性語言,它提供了一個易的開發(fā)過程。3,JavaScript可以使多種任務(wù)僅在客戶端就可完成,而不需要網(wǎng)絡(luò)和服務(wù)器的參與,從而支持分布式的運算和處理。4,JavaScript是一種解釋性的語言,即不需要對JavaScript程序進行預(yù)先編譯而產(chǎn)生可執(zhí)行的機器代碼。使它比編譯性語言更加易于編程和應(yīng)用。5,Javascript的簡單性主要體現(xiàn)在:首先它是一種基于java基本語句和控制流之上的簡單而緊湊的設(shè)計,從而對于學(xué)習(xí)java是一種非常好的過渡。其次它的變量類型是采用弱類型,并未使用嚴格的數(shù)據(jù)類型。6,Javascript的安全性在于,它不允許訪問本地的硬盤,并不能將數(shù)據(jù)存入到服務(wù)器上,不允許對網(wǎng)絡(luò)文檔進行修改和刪除,只能通過瀏覽器實現(xiàn)信息瀏覽或動態(tài)交互。從而有效地防止數(shù)據(jù)的丟失。Javascript的缺點:JavaScript的局限性在WWW上有很多瀏覽器,如Netscape Navigator,Mosaic和HotJava

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論