當(dāng)然,在使用Java作為解決方案時(shí),也會(huì)遇到很多讓我們頭疼的問(wèn)題,這些問(wèn)題導(dǎo)致同時(shí)執(zhí)行的并發(fā)性比較差,系統(tǒng)速度慢等等。歸納起來(lái)看,我們?cè)龅竭^(guò)的主要具體的問(wèn)題有:
(1)用Java來(lái)實(shí)現(xiàn)CORBA中的Component,有時(shí)效率會(huì)比較低。
(2)用Java來(lái)建立數(shù)據(jù)庫(kù)連接往往會(huì)比較慢。
(3)用JSP編程時(shí)容易導(dǎo)致系統(tǒng)信息的擴(kuò)散。比如,如果有黑客攻擊一臺(tái)運(yùn)行JSP程序的服務(wù)器,他可以故意地輸入一些非法字符或異常信息給JSP程序,于是程序執(zhí)行將出現(xiàn)異常。這時(shí),就會(huì)在頁(yè)面上打印出相應(yīng)的錯(cuò)誤信息。很不幸的是,這些信息極有可能暴露出這臺(tái)服務(wù)器的JDK的版本號(hào)與路徑信息等內(nèi)容。這往往容易讓黑客們有機(jī)可乘,有可能去抓住系統(tǒng)的漏洞。
在發(fā)現(xiàn)了這些問(wèn)題后,我們經(jīng)過(guò)仔細(xì)研究,找出了一些解決辦法。比如:
(1)既然用Java實(shí)現(xiàn)Component比較慢,我們就盡量減少Component所執(zhí)行的業(yè)務(wù)邏輯量。爭(zhēng)取把能夠放在存儲(chǔ)過(guò)程中實(shí)現(xiàn)的操作,盡可能在存儲(chǔ)過(guò)程中加以實(shí)現(xiàn)。眾所周知,數(shù)據(jù)庫(kù)的存儲(chǔ)過(guò)程操作,比起在Java程序中執(zhí)行數(shù)據(jù)庫(kù)操作要快得多。
(2)既然用Java建立數(shù)據(jù)庫(kù)連接比較慢,我們就可以把數(shù)據(jù)庫(kù)連接封裝成連接池(Connect Pool),從而能非常有效地提高系統(tǒng)效率。我們也曾經(jīng)用“Load Runner”作過(guò)壓力測(cè)試,使用連接池比不使用連接池的速度要快上3~5倍。
(3)為了對(duì)付JSP程序與Servlet程序會(huì)打印出異常系統(tǒng)信息的問(wèn)題。我們?cè)殚喠撕芏郕SP或Servlet的資料,最終是毫無(wú)頭緒。但是我們可以換另一種思路,即是不從程序下手,而從Web Server著手,我們可以把Apache配置成為使這類異常信息不再打印出來(lái),而是使之僅出現(xiàn)一個(gè)通用的異常說(shuō)明的頁(yè)面,這樣,就能十分有效地解決這個(gè)問(wèn)題。
在我們使用Java作為編程語(yǔ)言的這么多項(xiàng)目中,絕大多數(shù)是比較成功的。Java語(yǔ)言作為一種快捷、穩(wěn)定的計(jì)算機(jī)語(yǔ)言,開(kāi)發(fā)基于因特網(wǎng)應(yīng)用的項(xiàng)目大多是相當(dāng)穩(wěn)定和比較適用的。
在我個(gè)人看來(lái),Java的應(yīng)用前景十分光明,大體上可以著眼于以下方面:
(1)在因特網(wǎng)上將會(huì)有更加廣泛的應(yīng)用。
(2)在嵌入式設(shè)備中,Java也大有用武之地。比如,在最新推出的Java技術(shù)中,Java已經(jīng)進(jìn)入了手機(jī)領(lǐng)域。
(3)Java程序大多以線程運(yùn)行,占用資源少,會(huì)逐步代替ASP與CGI程序。根據(jù)第三方測(cè)試表明:JSP程序比ASP程序要快2倍以上。用JSP代替ASP應(yīng)是大勢(shì)所趨。
(4)Java在無(wú)線互聯(lián)網(wǎng)中的應(yīng)用將會(huì)更加廣泛。Java支持WAP,可以方便地用Java開(kāi)發(fā)WAP程序,實(shí)現(xiàn)WAP應(yīng)用。
(5)Java與XML的無(wú)縫連接使Java在數(shù)據(jù)傳輸和異構(gòu)網(wǎng)絡(luò)通信方面有著很大的優(yōu)勢(shì)。
就我個(gè)人而言,我將會(huì)在相當(dāng)長(zhǎng)一段時(shí)期內(nèi)致力于Java在無(wú)線互聯(lián)中的應(yīng)用,為我國(guó)的移動(dòng)通信事業(yè)開(kāi)發(fā)出更多的優(yōu)秀實(shí)用的項(xiàng)目。
相關(guān)推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |