當前位置:首頁 » 編程語言 » phpjsp比較

phpjsp比較

發布時間: 2022-12-17 05:40:36

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好學,對於jsp和php在認識上不要偏執於一方,各有優勢。大型網站來說jsp有優勢,但jsp比較復雜,處理起來不容易。而對於小網站php反而小巧靈活,jsp倒顯得龐大了,這也是目前PHP主機多的原因,因為這些主機主要面各於小型零散的客戶。

③ 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。

(4)phpjsp比較擴展閱讀:

ASP.NET也是常用的網站開發語言之一:

優點:

1. 簡潔的設計和實施。

2. 語言靈活,並支持復雜的面向對象特性。

3. 開發環境。

缺點:

1.資料庫的連接復雜。

2.不具有跨平台性,只支持windows平台。

⑤ PHP與JSP

PHP:

PHP(外文名:PHP: Hypertext Preprocessor,中文名:「超文本預處理器」)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,

主要適用於Web開發領域。PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。它可以比CGI或者Perl更快速地執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,

PHP是將程序嵌入到HTML(標准通用標記語言下的一個應用)文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;PHP還可以執行編譯後代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。

PHP的特性:

1、PHP 獨特的語法混合了 C、Java、Perl 以及 PHP 自創新的語法。

2、PHP可以比CGI或者Perl更快速的執行動態網頁——動態頁面方面,與其他的編程語言相比。

PHP是將程序嵌入到HTML文檔中去執行,執行效率比完全生成htmL標記的CGI要高許多;

PHP具有非常強大的功能,所有的CGI的功能PHP都能實現。

3、PHP支持幾乎所有流行的資料庫以及操作系統。

4、最重要的是PHP可以用C、C++進行程序的擴展!

ThinkPHP是一個免費開源的,快速、簡單的面向對象的 輕量級PHP開發框架 ,創立於2006年初,遵循Apache2開源協議發布,是為了敏捷WEB應用開發和簡化企業應用開發而誕生的。ThinkPHP從誕生以來一直秉承簡潔實用的設計原則,

在保持出色的性能和至簡的代碼的同時,也注重易用性。並且擁有眾多的原創功能和特性,在社區團隊的積極參與下,在易用性、擴展性和性能方面不斷優化和改進,已經成長為國內最領先和最具影響力的WEB應用開發框架,眾多的典型案例確保可以穩定用於商業以及門戶級的開發。

PHP安全:

PHP其實不過是Web伺服器的一個模塊功能,所以首先要保證Web伺服器的安全。當然Web伺服器要安全又必須是先保證系統安全,這樣就扯遠了,無窮無盡。常見的web安全漏洞有:注入攻擊,跨站攻擊,伺服器自身漏洞等。

PHP的優點學習過程和方法:

PHP的語法類似於C,Perl,ASP或者JSP。對於那些對上述之一的語言較熟悉的人來說,PHP太簡單了。相反的,如果你對PHP了解較多,那麼你對於其他幾種語言的學習都很簡單了。你只需要很短的時間內將PHP的核心語言特點全部掌握,你可能已經非常了解HTML,

甚至你已經知道怎樣用編輯設計軟體或者手工來製作好看的WEB站點。由於PHP代碼能夠無障礙的添加進你的站點,在你設計和維護站點的同時,你可以很輕松的加入PHP使得你的站點更加具有動態特性。

(5)phpjsp比較擴展閱讀:

PHP認證級別:

PHP課程由初級(IFE)、中級(IPE)和高級(IAE)三個部分。

1、IFE即Index Front-end Engineer的縮寫,指數前端工程師的意思。

2、IPE即 Index PHP Engineer 的縮寫,意思是指數PHP工程師。

3、IAE即 Index architecture/advanced engineer 的縮寫,意思是:指數高級/架構工程師。

JSP-網路

⑥ php和jsp哪個好

php和jsp各有優點
php語法簡單易懂,很靈活,運行也很快,但是機制很不全,不適合做大的動態網頁,很難維護!
jsp比較復雜,但功能很強大,性能也很好,穩定,也易於維護。
總的來說jsp好的多。php沒前途了。

留言系統和在線訂單這種小應用應該用php就行了,不過如果你要做大的話就用jsp吧

我說jsp當然是說jsp+servlet一起用了,或者用基於jsp技術和Javabean的一些J2EE Web框架了。單純jsp肯定不能做東西。
php好像都沒有命名空間,寫起來大的項目感覺很不爽。
不過我對php了解不是很深。

⑦ 我想問一下jsp,php,asp哪個好

jsp運用起來會好一點。JSP或者說J2EE平台做為企業大型應用來說,自然也是首選,因為J2EE本身是一個標準的集合,更加開放。支持的廠商和產品很多,而且效率和安全上非常好,上手也很快,開發的平台也能夠讓你自己去做個性化的update。
更多關於jsp,php,asp哪個好,進入:https://m.abcgonglue.com/ask/4f09841615839191.html?zd查看更多內容

⑧ jsp與php的區別

jsp目前主流是做前端驗證,,php做後端與資料庫交互。

配合html 可以寫一個網站。

⑨ PHP和JSP對比

現在InterNet 越來越成為生活中不可或缺的一部分,製作網頁的動態語言也越來越多,主要流行的有以下幾種,ASP,PHP 和 JSP,他們之間互有優缺點,筆者在工作實踐中對他們作了一下比較淺顯的比較。

ASP 由於其簡單功能實用等方面受到廣大朋友的喜歡,再加上MS的強有力支持,可以說是時下作站點最為流行的語言,他藉助MS的Com+ 技術,幾乎可以實現在C/S 能夠實現的所有功能,可以說確實具有相當的競爭力。ASp的代碼實現也很簡單,MS 提供的InterDev 在RAD 的基礎上,使Asp 的開發一夜之間火遍了大江南北。但是他的缺點是,由於MS 長久以來的霸道作風,他只能運行在MS 的平台上,因此在關鍵性的應用上使人難以輕易接受。

PHP 則市秉承Linux 的GNU 風格,藉助與源碼公開,使他迅速成為世界上目前應用最為廣泛的站點製作語言之一。藉助與C++的形式,引用類的概念,使得代碼的可重復性應用便的異常簡單。加上他和Linux,Apache 和MySql 的緊密配合,關鍵性的應用也沒有問題(有名的Sina就是採用Php)。但是他有一個比較大的麻煩,就是沒有一個非常有實力的公司專門給他做支持,因此相關的學習資料比較少,目前在國內使用他的站點比較多,但是專門講解他的站點就比較少。給初學者帶來了很多的麻煩。

JSP 是Sun公司推出的新一代站點開發語言,他完全解決了目前ASP,PHP的一個通病--腳本級執行(據說PHP4 也已經在Zend 的支持下,實現編譯運行).Sun 公司藉助自己在Java 上的不凡造詣,將Java 從Java 應用程序 和 Java Applet 之外,又有新的碩果,就是Jsp--Java Server Page。Jsp 可以在Serverlet和JavaBean的支持下,完成功能強大的站點程序。

我在實際工作中,就這三種語言的性能進行了比較 首先進行的是循環性能測試首先測試的是Jsp測試採用 20000*20000 次循環運算(有沒有搞錯,這么多),測試結果另人不可思議,該程序只用了不到 4 秒的時間就運行結束了。(沒有搞錯吧),程序代碼如下:

<jsp:useBean id='clock' scope='page' class='dates.JspCalendar' type="dates.JspCalendar"/>
<jsp:getProperty name="clock" property="time" />
<%
int i=0;
int j=0;
int k=0;
for(i=0;i<20000;i++){
for(j=0;j<20000;j++){

}
}
%>
<jsp:useBean id='clock1' scope='page' class='dates.JspCalendar' type="dates.JspCalendar"/>
<jsp:getProperty name="clock1" property="time" />

下一步測試的是 PHP,最初也准備測試 20000*20000次,但是不管把程序最大運行時間調的再大,也無法運行結束,因此改為 2000*2000 ,運行時間竟然達到 84 秒,程序代碼如下:

<?
$TTime=date("Y-n-d"). " " . date("H:i:s");
echo $TTime;
echo "<br>";
for($i=0;$i<1000;$i++){
for($j=0;$j<1000;$j++){
}
}
$TTime=date("Y-n-d"). " " . date("H:i:s");
echo $TTime;
?>

最後進行的是Asp 的測試,測試的循環也是 2000*2000(幾個0可要看清楚),運行時間是 63 秒,程序代碼如下:

<%
response.write now
response.write "<br>"
for i=0 to 2000
for j=0 to 2000
next
next
response.write now
%>

另外,我也對資料庫連接作了測試,由於Jsp 在連接資料庫時需要通過 JDBC,因此必須專門為此作一個連接資料庫的JavaBean,為了簡單起見,我只把測試結果寫出來,想要代碼的朋友,和我聯系!
對 Oracle 8 進行 1000 次 Insert,Update,Select,和Delete
Jsp 需要 13 秒
Php 需要 69 秒
ASP 需要 73 秒

熱點內容
輔助官網源碼 發布:2024-05-20 07:31:48 瀏覽:865
androidbutton的屬性 發布:2024-05-20 07:18:58 瀏覽:636
查找重復欄位的sql 發布:2024-05-20 07:18:17 瀏覽:302
我的世界創造房子伺服器 發布:2024-05-20 06:48:36 瀏覽:818
小米筆記本存儲不夠 發布:2024-05-20 06:32:53 瀏覽:784
dirt5需要什麼配置 發布:2024-05-20 06:02:58 瀏覽:543
怎麼把電腦鎖上密碼 發布:2024-05-20 05:19:09 瀏覽:985
安卓為什麼連上wifi後沒有網路 發布:2024-05-20 05:17:50 瀏覽:419
安卓usb在設置哪裡 發布:2024-05-20 05:03:03 瀏覽:187
綏化編程 發布:2024-05-20 04:59:44 瀏覽:991