jsp比php
⑴ php相比jsp還有什麼優勢
1、語言難易比較
PHP是一種解釋執行的腳本語言,語法和c語言類似,易學易用,不懂電腦的非專業人員稍經學習也能使用PHP.而java要先編譯成Class文件,然後在Java虛擬機上執行,Java開發需要熟悉Java語法以及一些核心的架構,從而實現一種可復用的、跨平台的軟體,Java培訓比PHP培訓要難學的多。
2、技術架構比較
從技術架構來說,Java語言相比PHP有明顯的優勢,Java使用的是面向對象的系統設計方法,而PHP還是採用面向過程的開發方法。PHP只能實現簡單的分布式兩層或三層的架構,而JAVA可以實現多層架構。資料庫層、應用邏輯層、表示邏輯層彼此分開,而且現在不同的層都已經有一些成熟的開發框架的支持。例如Struts就是利用Java的web開發技術實現了MVC的設計模式,而在業務邏輯層也有Spring框架,資料庫持久化層有Hibernate等框架。這些框架可以方便開發者高效、合理、科學得架構多層的商業應用。從數學運算和資料庫訪問速度來講,Java的性能也優於PHP.實際上,對於跨平台的大型的企業應用系統來講,Java幾乎已經成為唯一的選擇。
3、Java和PHP技術層面對比
Java是純面向對象開發,功能強大,分支眾多,沒有Java不能做的軟體。C/S也好B/S也好。從功能上講,沒有語言可以和Java相比。
PHP屬於後起之秀,吸收了Java和c以及perl等語言優點,專注互聯網領域。WEB領域PHP擁有得天獨厚的優勢,WEB領域沒有語言可以和他比。
4、Java和PHP的發展空間對比
安卓勢頭很猛,但手機安裝app數量有限,推廣難,也是app面臨的最大挑戰,好在安卓只有JAVA可以做,除此之外就是HTML5了。目前來說互聯網的發展空間巨大,而互聯網離不開WEB,WEB離不開PHP。兩者相比,個人覺得PHP的優勢更加明顯。
5、適用性比較
PHP適合於快速開發,中小型應用系統,開發成本低,能夠對變動的需求作出快速的反應。而Java適合於開發大型的應用系統,應用的前景比較廣闊,系統易維護、可復用性較好。還有,同樣功能的系統用Java開發的系統要比PHP開發的系統的價格要高。
6、薪資比較
薪資事由供求關系決定的,人才缺失,薪資自然高,人才飽和,薪資自然不會高。從需求上看企業對Java人才的需求是比較大的,但Java方面的人太多,而PHP方面的人才要少很多,所以面上看PHP的薪資應該要高一些,但Java只要學得好,薪資高的也很多,這方面還是看技術。
總結下:不管是PHP還是Java都是不錯的選擇,目前來說這兩種語言都還處在勢頭上,但是從長遠出發還是Java好,畢竟從性能、處理數據各方面來看還是Java有優勢一些,當然最終選擇還是在你自己的手裡。
⑵ php和jsp有什麼不同
現在市場上的oa基本上可歸結為兩大陣營,即php陣營和java陣營。但對接觸oa不久的用戶來說,看到的往往只是它們的表相,只是明顯的價格差異,卻很難看出它們之間的實際差異。其實, PHP + MYsql 不值錢不僅僅局限於oa軟體,而是整體上PHP + MYSQL開發的軟體都不如java開發的軟體值錢。為什麼PHP + MYSQL 的OA為什麼不值錢呢?首先得明白php和java之間的差異才行。
1、系統的技術架構比較
分層是將系統進行有效組織的方式,分而治之的思想是計算機領域中非常重要的思想。在好的分層思想引導下,便能實現「高內聚、低耦合」,也能將具體的問題割裂開來,易於控制、易於延展,更易於分配資源。PHP只能實現簡單的分布式兩層或三層的架構,而JAVA在這方面就十分強大,可以實現多層的網路架構。運用MVC的設計模式,可使oa系統具有更加高效、合理的系統架構。技術架構的落後,使運用php編寫的oa軟體系統先天不足,而後天又無法補足其先天上的劣勢。使得系統在可拓展性、需求應變性上與JAVA編寫的oa軟體系統的差距越來越大。架構的差距,註定了php做的oa充其量是個小家碧玉,始終無法和java這種大家閨秀同台競技。
2、資料庫訪問比較
PHP可編譯成具有與許多資料庫相連接的函數。將自己編寫外圍的函數去間接存取資料庫。通過這樣的途徑當更換使用的資料庫時,可以輕松地修改編碼以適應這樣的變化。但PHP提供的資料庫介面支持彼此不統一,比如對Oracle, MySQL,Sybase的介面,彼此都不一樣。由於PHP對於不同的資料庫採用不同的資料庫訪問介面,所以資料庫訪問代碼的通用性不強。
而Java通過JDBC來訪問資料庫,通過不同的資料庫廠商提供的資料庫驅動方便地訪問資料庫,訪問資料庫的介面比較統一。如果同樣是將開發的web應用從MYSQL數據數轉到ORACLE數據,PHP需要做大量的修改工作,而且比較繁瑣。但JAVA開發的便只需要很少的更改便能實現。
資料庫訪問方式的差異,奠定了php開發出的oa和java開發出來的oa是馬車和火車的差距,前者只能亦步亦趨而且額度有限,後者卻是工業化的結晶,不僅能夠包容萬物而且速度上穩步提升。
3、安全性對比
在同是開源和跨平台的java面前,php丟掉了很多的優勢。在代碼的安全性上尤為突出。php的開發程序在別人拿到代碼後,可以很容易的進行修改。而java開發的程序由於無法看到完整的源代碼,只能看到一些編譯好的類文件,所以安全性較高。加之系統架構的優勢,在安全性上php和java是相去甚遠。
如果非要將php和java在安全性上做個比較的話,同一個小偷光顧php那是隨便拿來隨便改,想拿什麼拿什麼,拿的高興還能大筆一輝某某到此一游。而光顧java的時候,便會發現警察把守,內設自動報警裝置,即便突破重重阻擾後進入居室。那值錢的東西都放在加密後的保險櫃中,只能望洋興嘆、鎩羽而歸。
4、前瞻性和拓展性
從整體來說,php適用於中小型系統,而java適用於大型系統。Php能夠將單一的事件做好,但卻不適合完成集成度較高的多項並發事件。為什麼說php適合中小型系統而不適合做大系統呢?
首先, php缺乏多層結構支持。而對於大型的系統負荷站點,只能採用分布計算。將資料庫、應用邏輯層和表示邏輯層彼此分開,並將同層的根據流量分開,組成二維數組。而php恰恰缺乏這種支持。
其次,PHP提供的資料庫介面不統一,要將多個不同的資料庫數據統一需要花費很大的力氣。而JAVA則沒有這種缺陷,可通過SUN Java的Java Class和EJB獲得規模支持,通過EJB/CORBA以及眾多廠商的Application Server獲得結構支持。如IBM的E-business,它的核心是採用JSP/Servlet的Web Sphere,是通過CGI來提供支持的。
如果將Php比作將才,具備獨擋一方的能力。那麼java便是帥才,具有較好的前瞻性和拓展性,整體布局和協同能力強。能夠指揮千軍萬馬,最後逐鹿中原。
5、開發成本比較
既然php在諸多方面都不如java優異,那麼php開發出的oa產品何以與java產品競爭呢?在於Php陣營普遍走的是低端路線,而java陣營走的是中高端路線。兩者之間交*的區域較小。
軟體價格的高低很大程度上和自身成本和功能相掛鉤。php的入門門檻較低,絕大多數學過c的程序員都很容易轉型為php程序員,這使得php程序員的泛濫成災的同時,低成本的php軟體產品也層出不窮。以PHP最經典的組合PHP + MySQL + Apache為例,由於所有軟體都是開源免費的,所以投入並不高。
而java開發需要特定的環境,成長為一個合格的java程序員需要一定的時間,java程序員的成本也是php成本的幾倍。Java的web應用伺服器免費的有Tomcat、JBoss等,而要想具有很好的商業化服務便必須選用Web Sphere和 Web logic。這其中投入的成本無形中便超是php成本的N倍。所以,java開發oa的成本要遠遠高於php開發出來的同類軟體產品。但也正由於java開發的成本較高,很難實現抄襲和短期內逾越的可能,也使得java用開發出的產品門檻更高。
不怕不識貨,就怕貨比貨。Php開發出來的產品也能用,但是和java開出的同類產品是沒法比較的。正因為php開發的產品整體性能和java開發的相去甚遠,所以php運用低成本的低價優勢和同類的java產品抗爭,以價格落差來平衡購買者的心態。所以,PHP + MYSQL 的OA不值錢也就不足為怪了
第二種
比較PHP和JSP這兩個web開發技術,在目前的情況是其實是比較PHP和Java的Web開發。以下是我就幾個主要方面進行的比較:
一、 語言比較
Php是解釋執行的伺服器腳本語言,首先php有簡單容易上手的特點。語法和c語言比較象,所以學過c語言的程序員可以很快的熟悉php的開發。而java需要先學好java的語法和熟悉一些核心的類庫,懂得面向對象的程序設計方法。所以java不如php好學。
Java首先要編譯成位元組碼.class文件,然後在java虛擬機上解釋執行。Java的web開發首先最容易想到的就是JSP(現在已經到JSP2.0),原來的java的web開發都是用servlet來實現的,用servlet來開發需要程序員在java的源文件中嵌入大量的html代碼。所以後來就出現了JSP,JSP可以方便的嵌入到html文件當中,其實jsp文件在伺服器上執行的時候首先會被應用伺服器轉換成servlet,然後再編譯執行。Jsp可以通過servlet和JavaBean的支持產生強大的功能。JavaBean 是一種可復用的、跨平台的軟體組件。使用javabean可以方便的實現java代碼和html的分離,能夠增強系統的功能和軟體的復用性。
Java的web開發屬於SUN公司定義的J2EE其中的規范。而且在J2EE中包括了java的web開發的所有方面,如:JSP、Servlet、JDBC、JNDI、JAVABEAN、EJB等等。J2EE就特別適合於做大型的企業級的應用。
二、 資料庫訪問比較
Java通過JDBC來訪問資料庫,通過不同的資料庫廠商提供的資料庫驅動方便地訪問資料庫。訪問資料庫的介面比較統一。
PHP對於不同的資料庫採用不同的資料庫訪問介面,所以資料庫訪問代碼的通用性不強。例如:用Java開發的web應用從MySQL資料庫轉到Oracle資料庫只需要做很少的修改。而PHP則需要做大量的修改工作。
三、 系統設計架構比較
採用Java的web開發技術,需要使用的是面向對象的系統設計方法,而PHP還是採用面向過程的開發方法。所以用Java進行開發前期需要做大量的系統分析和設計的工作。
四、 跨平台性
Java和PHP都有很好的跨平台的特性。幾乎都可以在不作任何修改的情況下運行在Linux或者Windows等不同的操作系統上。
五、 開發成本比較
PHP最經典的組合就是:PHP + MySQL + Apache。非常適合開發中小型的web應用,開發的速度比較快。而且所有的軟體都是開源免費的,可以減少投入。
Java的web應用伺服器有免費Tomcat、JBoss等,如果需要更好的商業化的服務有:Web Sphere和 Web logic。
六、 分布式多層架構比較
PHP只能實現簡單的分布式兩層或三層的架構,而JAVA在這方面就比較強大,可以實現多層的網路架構。資料庫層(持久化層)、應用(業務)邏輯層、表示邏輯層彼此分開,而且現在不同的層都已經有一些成熟的開發框架的支持。例如Struts就是利用java的web開發技術實現了MVC的設計模式,而在業務邏輯層也有Spring框架,資料庫持久化層有Hibernate等框架。這些框架可以方便開發者高效、合理、科學得架構多層的商業應用。
下面簡要的說一下Struts,它實質上是在JSP Model2的基礎上實現的一個MVC(Model、View、Controler)框架。JSP Model2體系結構是一種聯合使用JSP 與Servlet 來提供動態內容的方法。在Struts框架中,模型由實現業務邏輯的JavaBean或EJB組件構成,控制器由Servlet實現的,視圖由一組JSP文件組成。採用Struts可以明確角色的定義和開發者與網頁設計者的分工。而且項目越復雜,其優勢越明顯。
七、 源代碼安全
PHP開發的程序的源代碼都是公開的,他人拿到php開發的程序後都可以進行修改。
Java開發的程序,最後用戶拿到的是只是一些編譯好的class類,無法看到完整的源代碼,安全性高。
八、性能比較
有人做過試驗,對這兩種種語言分別做迴圈性能測試及存取Oracle資料庫測試。
在循環性能測試中,JSP只用了令人吃驚的四秒鍾就結束了20000*20000的迴圈。而PHP測試的是2000*2000循環(少一個數量級),卻分別用了63秒。
資料庫測試中,二者分別對 Oracle 8 進行 1000 次 Insert,Update,Select和Delete: JSP 需要 13 秒,PHP 需要 69 秒。
表格 1 PHP 與Java的比較
PHP JAVA
可復用性 低 高
開發速度 快 慢
易維護性 差 優
可移植性 優-Linux、Windows、Unix等
安全性 低 高
開發費用 低 高
多層架構 差 優
資料庫訪問 介面不統一 介面統一
可擴展性 差 優
面向對象 差 優
綜上 PHP適合於快速開發,中小型應用系統,開發成本低,能夠對變動的需求作出快速的反應。而Java適合於開發大型的應用系統,應用的前景比較廣闊,系統易維護、可復用性較好。還有,同樣功能的系統用Java開發的系統要比PHP開發的系統的價格要高
⑶ jsp和php 哪個更有前景
有人說php比Asp,Asp.Net都要好,或者Asp比其他語言都要好。其實,程序的優略與網站開發人員的經驗\技術水平相關,而語言本身並沒有什麼優略之分.經驗多的程序員,不管使用的哪種語言,都可以開發出一套非常優秀的程序.Php能做到的,Asp也能做到,Asp能做到的,Php一樣可以做到.能不能做到,主要看程序員的能力。
目前國內用得比較多的還是Asp,一方面,Asp比較容易上手,也比較容易進行開發;另外一方面,Windows系統在內地用得比較普及.而並不是因為asp比php要好.而Html是每個網站建設人員的基礎知識。下面我分別把各語言的優點,缺點一一列出。
名詞定義:
資料庫交互:其實就是程序往資料庫寫數據或者從資料庫讀數據的過程。資料庫:用來保存數據的軟體系統
Access:微軟Office帶的小型資料庫系統,一般與Asp,Asp.Net配合使用。這個資料庫極度適合小型企業的網站,對於數據量低於10萬條的網站來說,完全沒有問題,網站數據超過三萬條,而速度依然不慢!採用的就是Access資料庫.
Mysql:一種免費的中型資料庫系統,一般與Php配合使用. 對於PHP程序員來說,mysql是最好的選擇.
MSSQL(Sql Server):微軟公司的大型資料庫系統,一般Asp,Asp.Net使用,目前比較流行的版本有2000,2005. 假若你的網站數據量超過了十萬\二十萬,那就改用MSSQL資料庫吧.
1、Html,Html是一個網站建設者的基本知識,沒有Html基礎的人員,就算你會Asp或者Php,或者其他語言,你也不要去開發網站程序除非你找到熟悉Html的美工合作,因為a、不管什麼語言,最後輸出的是Html代碼,b、Html代碼規不規范,影響搜索引擎的收錄效果。
優點:無須經過伺服器解釋運行,當訪問者打開一個HTML網頁,伺服器馬上將該頁發送給訪問者的電腦里。訪問速度快,安全。
缺點:無資料庫交互能力,由於不是一個可執行的網站語言,因此你沒辦法通過Html提交數據,由Html寫入資料庫。
辨別:一般情況下,網址後面的是.htm,.html的就是html靜態網頁
2、Php,Php是一種開源的網站程序語言運行於Apache,Php一般與MySql資料庫配合使用。
優點:易開發,可使用Zend Encoder進行編譯,運行速度比起Asp解釋型語言要快,且代碼無法被其他人查看。由於國外Linux平台比較普遍,因此比較容易找到廉價的空間。
缺點:與Mysql的配合使用,使得資料庫與網站程序分別位於兩台伺服器,網站的整體速度受到了web伺服器與db伺服器之間的交互速度及web伺服器運行速度及反應速度的制約。經過編譯的程序,除了編譯者,他人很難進行拓展。
辨別:文件一般以.php結尾
3、Asp,Asp是微軟的產品,運行於IIS,一般與Access或Mssql配合使用。
優點:易開發,可通過工具進行程序加密,採用Access資料庫的系統,在數據量小(一般10萬以下)的情況下,速度要優於其他類型程序。
缺點:在數據量大(10萬以上)的情況下,採用Access資料庫速度要慢,需要採用Mssql資料庫。一般國外Windows空間價格要相對高點。
辨別:文件一般以.asp結尾
4、Jsp,Jsp是採用Java為程序語言,運行於Tomcat
優點:聽說安全性要高
缺點:Jsp空間在國內外,都比較少,價格也相對比較高.
辨別:一般網址中包含了servlet字樣
5、Asp.Net,是微軟公司最近幾年著力推行的一種新型應用,你可以採用C#,VB.Net,J#.Net,c++.Net進行語言開發。目前有1.1,2.0,3.5等多個版本。
優點:主倡程序與界面分離,程序直接編譯成dll文件,理論上在伺服器啟動後,第一個人第一次訪問該站的人和.net頁面,系統就將各dll文件載入運行區,運行速度會比較慢,而以後其他訪問者訪問程序速度快.
缺點:開發比較繁瑣,版本比較多.
辨別:一般以Aspx、Ashx結尾
網站程序語言另外有Cgi,因為不常用,所以不介紹了。
關於首頁Flash片頭:很多人喜歡這個東西,因為他漂亮,然而對Soho一族,個人認為沒有必要。因為這東西除了增加你的花費外,沒有其他作用。
關於Flash導航條,個人不建議,因為搜索引擎很難讀取到Flash裡面的連接信息。
⑷ jsp與php的區別
jsp目前主流是做前端驗證,,php做後端與資料庫交互。
配合html 可以寫一個網站。
⑸ jsp和php到底什麼區別兩者開發網站有哪些不同
jsp這是個很大的整套解決方案,常用來代指view層的jsp【允許其他的頁面展示,甚至不是jsp】,Model的hibernate,ibatis,Controller層面的struts,spring【這兩個可不僅僅是controller,這兩個可以統籌全局】這一套整體。php嘛,分的就不那麼清楚,他追求的是簡單快捷,做個人應用和一些簡單的商業應用非常棒,這是jsp+struts/sping+hibernate/ibatis無法匹敵的,但是企業級綜合應用,php能不能做都是個問題。總結一下:基本應用,幾乎一樣;高級應用,各有專攻。
⑹ php和jsp哪個好
php和jsp各有優點
php語法簡單易懂,很靈活,運行也很快,但是機制很不全,不適合做大的動態網頁,很難維護!
jsp比較復雜,但功能很強大,性能也很好,穩定,也易於維護。
總的來說jsp好的多。php沒前途了。
留言系統和在線訂單這種小應用應該用php就行了,不過如果你要做大的話就用jsp吧
我說jsp當然是說jsp+servlet一起用了,或者用基於jsp技術和Javabean的一些J2EE Web框架了。單純jsp肯定不能做東西。
php好像都沒有命名空間,寫起來大的項目感覺很不爽。
不過我對php了解不是很深。
⑺ php和jsp哪個好,有人說PHP快被淘汰了
php和jsp各有優勢,php是開源的,容易上手,跨平台好,容易部署,易維護,但運行效率比jsp慢,但不會有什麼影響。jsp,成熟、靈活、穩定性好,是java的高級應用,要有java的基礎
⑻ PHP好還是Jsp好
php是吸收Java, C++, PERL和C中的優秀部分開發而來的,他是面向對象的,解釋型的,健壯的,安全的,性能非常之高的,獨立於架構的,可移植的,動態的腳本語言(書上都是這樣說的,拿來用下).
要是從運行速度上來講php要比jsp快很多倍,因為存在java虛擬機的問題.
從安全方面來講php的安全性要低於jsp,因為jsp是使用java語言來進行開發的,而java是公認的最安全的web開發語言.基本上對安全性要求高的公司企業都是使用jsp,(看下各大銀行系統)
從可移植性方面來講,php和jsp應該在同一級別,當然前提是建立在java虛擬機的基礎上,這樣jsp才能和php處一同一級別.
php和jsp要是為了找工作的話,php的好找點,大多數中小企業都是用php開發的,要是想拿高工資那就學jsp(找工作難易於你的能力有關),要是學jsp的話建議你直接學java好了,好的jsp程序員一定是一個出色的java程序員,反之不成立,
教程方面你還是自己找吧,一本書的好壞直接影響你對要學的語言的興趣.
說了一堆,作為參考,主意自己來定.
⑼ ASP\JSP\PHP相比各有什麼優缺點
ASP、JSP、和PHP的優點和缺點:
一、ASP
優點:
1、無需編譯
2、易於生成
3、獨立於瀏覽器
4、面向對象
5、與任何ActiveX scripting 語言兼容
6、源程序碼不會外漏
缺點:
1、Windows本身的所有問題都會一成不變的也累加到了它的身上。安全性、穩定性、跨平台性都會因為與NT的捆綁而顯現出來。
2、ASP由於使用了COM組件所以它會變的十分強大,但是這樣的強大由於Windows NT系統最初的設計問題而會引發大量的安全問題。只要在這樣的組件或是操作中一不注意,哪么外部攻擊就可以取得相當高的許可權而導致網站癱瘓或者數據丟失。
3、由於ASP還是一種Script語言所沒除了大量使用組件外,沒有辦法提高其工作效率。它必須面對即時編繹的時間考驗,同時我們還不知其背後的組件會是一個什麼樣的狀況。
4、無法實現跨操作系統的應用。當然這也是微軟的理由之一,只有這樣才能發揮ASP最佳的能力。可是我卻認為正是Windows限制了ASP,ASP的概念本就是為一個能讓系統運行於一個大的多樣化環境而設計的。
5、還無法完全實現一些企業級的功能:完全的集群、負載均橫。
二、JSP
優點:
1、 一處編寫隨處運行。
2、 系統的多台平支持。
3、 強大的的可伸縮性。
4、 多樣化和功能強大的開發工具支持。
缺點:
1、 與ASP一樣,Java的一些優勢正是它致命的問題所在。
2、 缺少系統性的資料。
3、 開發速度超慢
三、PHP
優點:
1、 一種能快速學習、跨平台、有良好資料庫交互能力的開發語言。
2、 簡單輕便,易學易用。
3、 與Apache及其它擴展庫結合緊密。
4、 良好的安全性。
缺點:
1、 在windows平台運行的安全性和穩定性不如Linux/Unix。
(9)jsp比php擴展閱讀:
ASP.NET也是常用的網站開發語言之一:
優點:
1. 簡潔的設計和實施。
2. 語言靈活,並支持復雜的面向對象特性。
3. 開發環境。
缺點:
1.資料庫的連接復雜。
2.不具有跨平台性,只支持windows平台。