一、技術區別
java是純面向對象開發,功能強大,分支眾多,沒有java不能做的軟體。C/S也好B/S也好。從功能上講,沒有語言可以和java相比。但其優勢也是其劣勢。
PHP吸收了java和c以及perl等語言優點,專注互聯網領域。在WEB領域中PHP擁有得天獨厚的優勢,WEB領域沒有語言可以和PHP相比。
二、資料庫訪問區別
Java通過JDBC來訪問資料庫,通過不同的資料庫廠商提供的資料庫驅動方便地訪問資料庫。訪問資料庫的介面比較統一。
PHP對於不同的資料庫採用不同的資料庫訪問介面,所以資料庫訪問代碼的通用性不強。例如:用Java開發的Web應用從MySQL資料庫轉到Oracle資料庫只需要做很少的修改。而PHP則需要做大量的修改工作。
三、安全性區別
在同是開源和跨平台的java面前,php丟掉了很多的優勢,在代碼的安全性上尤為突出。
php的開發程序在別人拿到代碼後,可以很容易地進行修改。而java開發的程序由於無法看到完整的源代碼,只能看到一些編譯好的類文件,所以安全性較高。
四、開發成本比較
PHP在互聯網應用諸多方面都強於Java,那麼Java開發出的電子商務產品何以與PHP產品競爭呢?這在於Java陣營普遍走的是政府路線,
而PHP陣營走的是全民路線。Java在互聯網方面靠的是大學老師的言傳身教,才得以在互聯網世界狺狺狂嘯,而PHP是靠得是自身品質而得民心,所以才一路贊歌。
軟體價格的高低很大程度上和自身成本和功能相掛鉤。PHP的入門門檻較低,但是任何方面成為高手,都是萬里挑一。絕大多數學過c的程序員都很容易轉型為PHP程序員,這使得PHP程序員如同國球一樣普及,同樣更是高手如雲,高質量的PHP軟體產品也層出不窮。
伺服器成本方面,PHP最經典的組合PHP+ MySQL + Apache,Java也是經常與MySQL +
Tomcat、JBoss等軟體配合。所有軟體都是開源免費的,所以伺服器端的投入都並不高。
而Java程序員的學習成
本卻是PHP成本的幾倍,原因也很晴朗,本身Java就不是專門給WEB開發用的。所以,Java開發電子商務的成本要遠遠高於PHP開發出來的同類軟體
產品。但也正由於Java開發的成本較高,所以往往也是做一個同樣的產品,達到同樣的效果,Java需要付出比PHP開發多出N倍的時間及經濟成本。直接地造成了巨大的時間及成本浪費。
❷ 為什麼說PHP適合做前端JAVA適合做後端
php更易上手,簡單實用。做一些不是很復雜的站前端交互一下很方便。但規模比較大,業務邏輯復雜的站就得系統整合一下需求。而Java在處理業務邏輯建模,搭架構等等都是有很多案例可尋的,並且技術成熟跨平台做後端非常適合。
❸ 前端是php做的頁面後端能用java嗎
可以的 數據都是存在資料庫的 只要可以更改數據 什麼語言都可以做,但是既然前台都是php了,後台也用php好一些,不然以後要增加什麼擴展的話需要找java和php兩個程序員來維護,不是很方便
❹ 為什麼大型網站前端使用 PHP 後台邏輯用 Java
最近糾結了一下,如果開發一個大型的網站,我到底應該使用php還是jsp,後台到底使用php還是用java,我的選擇要麼是php要麼是java,因為我喜歡linux、unix,當然window平台也必須支持,以便哦的妹紙可以查看。這就要求用一些跨平台相當好的軟體+工具+語言,所以選擇只能是這么幾個。最後我的決定是php+java,一個前台一個後台,理由如下: php和java在開源社區的活躍度嚴重超過了其他的語言,使用人數也都是相當之多;活躍的開發工程師們能夠給我幫助,且這倆都能很好的跨平台,不用花費大量的人力物力去維護 我也做過一個物聯網的網關網站,比較復雜,當時採用的是jsp+java,復雜程度可想而知,單單說開發過程,網站部分繁瑣,每次想查看結果運行網站的時候還需要重新打包部署一下,嚴重影響了哦的開發效率,每天的時間都是在等待(因為網站比較復雜,打包部署需要浪費一些時間)。相對來說呢,php就沒有了,php靈活,好學,上手快,容易修改,容易發布,關鍵是熱部署,這個真讓哦眼睛大亮。當然看待任何事物都需要兩種眼光,php也會有缺點,比如沒有太好的開發IDE,所以拼寫錯誤很正常,且php的sql注入危險較大點,執行效率不高,安全性不如java。還有一些理由,來自知乎的米米們給的建議: Java的優點則是穩定可靠、運行效率高(尤其是JIT的出現之後差距更大了)、不容易犯錯(強類型、預編譯、必須攔截異常等等),缺點是開發和發布的效率相對較低。盡管優秀的工程師能在一定程度上改變以上的問題,但通常而言,哪能到處都是高手多如狗的夢之隊? 從MVC的層次結構上說,在一般網站項目的開發周期中,需求變更最頻繁、調整最多的是View,其次是Controller,最後是Model。這非常好理解,沒事干誰天天改數據結構?每次版本升級控制結構都要改的啦,或多或少而已。再次是兩者之間的通信,目前RPC技術已經足夠成熟,無論是Web Service/Hessian/RESTful API都能夠讓開發人員專注在功能開發上,而不需要過多的考慮異構平台的差異和通訊的細節。這也就意味著在大公司里同時應用兩種語言的方案並不會引入過多的復雜度和工作量。當然,文檔量的下限倒是因此被拔高了不少,但事實上大部分團隊對此其實都是喜聞樂見的:別每天說文檔重要但沒空了,你不寫其他同事怎麼配合? 靠近用戶的前端,使用PHP能夠更快的完成前端頻繁而瑣碎的更新,自如的應對各種需求的變化。頁面的結構調整、用戶輸入內容的基本驗證、僅只和用戶交互有關的簡單邏輯等都很適合使用PHP來開發,甚至可以通過類似Smarty等模板技術將其頁面的變動遷移到前端團隊。而基本的業務邏輯和數據的更新採用Java開發,可以有效的提高復用度、提升性能和吞吐能力、規避安全問題等。而開發效率稍有降低換來的是可維護性的提升,發布速度慢就更不是問題了,因為通常對於基礎業務邏輯的調整往往都是整體修改,並層層測試確認才能發布的。 所以,大型網站前端採用PHP後端採用Java,既好招人又好維護、系統穩定還性能高、連安全性都大大增加。代碼復用、文檔完備度居然也都改善了。讓你在以上這些好處觸手可及時,對架構師知識譜系在廣度上要求更高一些這事根本就不是個問題。
單一方案其實一樣可以做良好的隔離,PHP同樣可以提供Service,而性能問題其實很多時候是演算法和架構的問題而不是語言差異的問題。如Velocity或JSTL等也是很優秀的隔離方案。
但這些方案在高壓力下會暴露出很多問題而體現雙語言的優勢,這些在上面其實都提到,詳細說明一些很難得到改變的點:
1. PHP由於其動態腳本語言的特性,包括類、函數、常量在內都需要在每次請求周期中重復執行後才能建立運行環境;為了保證解析速度而犧牲編譯質量;應用了FastCGI但僅僅只是復用進程處理請求減少fork成本而不是像其他語言,初始化完畢後通過FastCGI的介面獲得數據並以對應介面返回數據等幾個原因,基本上已經不可能在性能上追回當初更爛現在開著JIT牌跑車的Java了。
2. 在PHP里是如此的容易犯錯而難以發現,即使你用實質上出自官方的Zend Studio,也無法改變一個事實:要保證你的程序高質量無大錯,得要有充足的經驗、足夠的嚴謹、以及——負責任的QA。淘寶的黃裳就曾經拿IDE這事開過玩笑。而玩笑背後的那個原因「缺乏中間件」最近幾年有不少的改善,主要是不少中間件的支持變得更廣泛了從而讓PHP得益,但發展的根源其實還是在C和Java社區。性能和易犯錯則是語言特性造成的技術難點,也是用來換取靈活、快捷的必要代價,很難去指望有根本的改善。
3. Java的世界裡也有JSTL、Velocity和Freemaker等,但和PHP靈活而強大的動態能力、豐富的函數和類庫、輕松的學習成本、多到令人發指的文檔相比,簡直就是渣,就是渣啊!JSTL改完了要重啟Context啊有木有?Velocity不關緩存也要重啟啊有木有?Velocity開緩存性能低下啊有木有?即使這些都不管,調整下某個數據校驗規則要改Action也要重啟有木有?
實際工作中性能問題可以通過良好的架構解決,容易犯錯的問題可以通過框架和規范以及全面的測試來解決,中間件選擇少些但其實該有的都有了,Java的靈活性一樣有不少可供考慮的解決方案哪怕是挫得要死的摘掉節點重啟,完成後重新上節點的策略。
所以,大家會看到單一語言的技術團隊也很多,這個問題的真正考慮還是更多在團隊自身的特點、積累等等。用了雙語言的,也知道自己為什麼要用這些,不用的也清楚自己的路該怎麼走。最後的最後說一句:如果你不知道自己為什麼要用雙語言方案的話,基本上你也就不需要考慮它了。從知乎上整理得到上文 我的Email:[email protected]
❺ 怎麼實現php前段java後端
前端展示由PHP解析,比如寫一個登錄頁面,PHP解析數據展示出來,而介面層由JAVA來實現。還有些任務類型的東西全部由JAVA後端來做。
❻ php是前端還是後端
因為php並未完全實現前後端的分離,從廣義上來講,php應當屬於後端,前端技術是指html+ajax+css+JS這些。
❼ 前端用PHP,後端用Java,怎麼進行交互額
php和java都是寫後端的,前端基本就是html、css、javascript、還有移動端,各瀏覽器的兼容,大致就這些。
❽ 有前端基礎後端學php還是java
看你發展路線. 年齡. 人生規劃
當事業做, 轉後端 二者都學, php 先易後難. java 先難後易. 自己決定. 而後 golangC++等都要學. 因為你要讀源碼. 後端拼的不是語言是. 技能. 比如你連起碼的資料庫性能都解決不了. 就算給你外星人語言你也用不上.
2.只是涉獵,以前端為主,則以 php 上手快.
3.純在這個行業玩幾年. 上年紀不用搞了. 建議去看看電影打打球. 不要浪費人生.
❾ php與java比較,哪個適合做前端,哪個做後台
PHP靈活,上手快,易修改,發布快捷,缺點是容易犯錯(常見如拼寫錯誤、SQL注入、上傳執行等)、執行效率不高、缺乏全局緩存。Java的優點則是穩定可靠、運行效率高、不容易犯錯(強類型、預編譯、必須攔截異常等等),缺點是開發和發布的效率相對較低。這里這是相對而言,並不是說PHP不能開發大型web,也不是說JAVA效率低,足夠經驗和能力的依然很高效。
java和php都能做後台,php也可以做前端
❿ web項目為什麼要用php做前端,java做後端,而不是直接h5+java
php做前端,java做後端
淘寶是個例子
伺服器端 前後分開 是為了兩方面,雖然淘寶最開始並不想這樣做。。。
先說下歷史,淘寶是 最開始php全部,
後來發現開銷太大,代碼效率不行,
就直接把數據存儲啊,用戶通知啊 就交給java
實際上大部分網站都樂意採用 這種前端php 後端 java或者C++這種形式,我是php c++ 這種。
優點,核心動作效率肯定高,c++ java 這種代碼效率奇高。比php腳本好很多。
前端php,語法簡單,維護簡單,部署簡單,而且容易找到維護人員。總之就是開發快,維護成本低。
大致了解了嗎?
你說的h5 + java實際上就是把java提到前台, 不是不可以,維護和開發成本太高了啊。前端開發要經常搞, 但是java做前台 要 調試 、 編譯 部署還要重編譯。 麻煩,人工開銷也大。不劃算
如果是.net技術 就更高成本了。光伺服器軟體一塊就要多少了。 所以微軟的框架 用的不多。國內外都不多,用.met的 成本開發 維護 都麻煩。要氣硬體條件還苛刻。