<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          盤點(diǎn) 6 個(gè)被淘汰的 Java 技術(shù),它們都曾經(jīng)風(fēng)光過!

          共 3029字,需瀏覽 7分鐘

           ·

          2020-07-27 19:19

          Java技術(shù)棧

          www.javastack.cn

          關(guān)注閱讀更多優(yōu)質(zhì)文章



          大家好啊,今天棧長(zhǎng)給大家分享下我的開發(fā)歷程中,我知道的那些被淘汰的技術(shù)或者框架,有些我甚至都沒有用過,但我知道它曾經(jīng)風(fēng)光過。

          廢話不多說,下面我要開始吹了……

          1、Swing

          下面這個(gè)是用 swing 開發(fā)的:

          圖來源網(wǎng)絡(luò),有沒有似曾相識(shí)的感覺?懂的自然懂!

          棧長(zhǎng)去年中秋也用過 swing:

          這個(gè)中秋,我用 Java 畫了一個(gè)月餅!

          Swing 算是 Java 早期代替 AWT 的桌面應(yīng)用 GUI 開發(fā)工具包,一個(gè)聽到就已經(jīng)淘汰的技術(shù),給我的感覺就是丑丑丑!現(xiàn)在與 AWT 一起在時(shí)間這個(gè)長(zhǎng)河里長(zhǎng)眠。

          如果 Java GUI 庫發(fā)展歷程分為三代,可以是:

          AWT > SWING > JAVAFX

          隨著 JavaFx 的發(fā)布,加速 SWING 的被淘汰。下面這個(gè)是用 JavaFx 開發(fā)的:

          圖來源:zhihu.com/question/54498643/answer/271632290

          現(xiàn)在 JavaFx 也有十來年了,雖然這篇帖子也在說 JavaFx 淘汰了的,只是現(xiàn)在桌面應(yīng)用不是主流吧,我也沒用過不敢亂說,JavaFx 在桌面應(yīng)用開發(fā)應(yīng)該還是有一席之地的。

          2、JSF

          JSF:Java Server Faces

          JSF是一種用于構(gòu)建 Java Web 應(yīng)用程序的表現(xiàn)層框架,和 Struts 一樣性質(zhì)的框架。

          圖來源:https://javabeat.net/jsf-2/

          國(guó)內(nèi)用 JSF 的比較少,有也是老系統(tǒng)了,國(guó)外應(yīng)該還有用 JSF 的,不過隨著 Spring MVC, Spring Boot 的橫空出世,JSF 應(yīng)該也是過時(shí)的技術(shù)了。

          3、EJB

          EJB也是個(gè)神器,只見其影,未見其身。前些年,在網(wǎng)上各個(gè)面試題還有它的身影,現(xiàn)在估計(jì)很難見到了。

          EJB:Enterprise Java Beans,即:企業(yè)Java Beans

          Sun公司發(fā)布的文檔中對(duì) EJB 的定義是:EJB 是用于開發(fā)和部署多層結(jié)構(gòu)的、分布式的、面向?qū)ο蟮?Java 應(yīng)用系統(tǒng)的跨平臺(tái)的構(gòu)件體系結(jié)構(gòu)。

          簡(jiǎn)單來說,EJB就是部署分布式系統(tǒng)用的,就是把A程序放在服務(wù)器上,通過B客戶端來調(diào)用,并且是跨平臺(tái)的。

          圖來源:oreilly.com

          因?yàn)?EJB 過于復(fù)雜和笨重,調(diào)試非常麻煩,現(xiàn)在都被輕量級(jí)的 RPC 框架(Dubbo)及輕量級(jí) Restful 形式的分布式框架 (Spring Cloud) 替代了。關(guān)注微信公眾號(hào)Java技術(shù)棧在后臺(tái)回復(fù)分布式可以取分布式架構(gòu)教程。

          4、JSP

          JSP 全稱:Java Server Pages,是由早期的 Sun 公司發(fā)布的一種動(dòng)態(tài)網(wǎng)頁開發(fā)技術(shù),即在 HTML 網(wǎng)頁代碼中嵌入 JSP 標(biāo)簽的 Java 代碼實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁。

          JSP 代碼示例:


          ????
          ????????微信公眾號(hào)Java技術(shù)棧
          ????
          ????
          ????????<%
          ????????????out.println("Hello, Java技術(shù)棧!");
          ????????%>
          ????

          這個(gè)示例只是簡(jiǎn)單的調(diào)用 JSP 的內(nèi)置 out 對(duì)象在頁面輸出展示一句話。

          JSP 的本質(zhì)其實(shí)就是 Servlet,JSP 文件被編譯之后,就變成了 Servlet Java 類文件,因?yàn)?JVM 虛擬機(jī)只能識(shí)別 Java 字節(jié)碼文件,而不能識(shí)別 JSP 文件。

          在 JSP 的時(shí)代,那時(shí)候還沒有前后端分離的說法,JSP 可以包攬全部,即實(shí)現(xiàn)靜態(tài)頁面,又實(shí)現(xiàn)動(dòng)態(tài)代碼邏輯,全部都在一個(gè) JSP 文件里面。這樣,一個(gè)程序員既是前端,又是后端。

          但是,現(xiàn)如今在前后端分離的熱潮下,前后端分工明確,后端只負(fù)責(zé)業(yè)務(wù)邏輯的接口開發(fā),前端負(fù)責(zé)調(diào)用后端接口再做頁面數(shù)據(jù)封裝展示,JSP 幾乎是被淘汰了。

          雖然 JSP 是被前后端分離取代了,但并不說明 JSP 沒有用了,不是所有系統(tǒng)都是前后端分離的,比如說一個(gè)只有兩三個(gè)頁面的動(dòng)態(tài)系統(tǒng),JSP、Servlet足以搞定,你總不能上頁面模板引擎、各種框架,或者再上前后端分離吧?

          5、Struts

          Struts2 那些年可謂是風(fēng)光無限啊,Struts2 + Spring + Hibernate 三大框架一起組成了 "SSH"————牛逼哄哄的 Java Web 框架三劍客。

          Struts 這篇就不多說了,具體看這篇:Struts2 為什么被淘汰?

          6、Memcached

          Redis 這幾年的大熱,現(xiàn)在已經(jīng)替代 Memcached 成為緩存技術(shù)的首要中間件,作為大廠的帶頭兵,在 BAT 里面,Redis 也已經(jīng)逐漸取代了 Memcached,廣泛使用 Redis 作為緩存應(yīng)用方案。

          為什么 Redis 能后來居上呢?關(guān)注微信公眾號(hào)Java技術(shù)棧在后臺(tái)回復(fù)redis可以獲取 Redis 系列教程。

          1)速度更快

          Memcached 使用的是多線程模型,既然是多線程,就會(huì)因?yàn)槿旨渔i而帶來性能損耗。而 Redis 使用的是單線程模型,沒有鎖競(jìng)爭(zhēng),速度非常快。

          相關(guān)閱讀:Redis 到底是單線程還是多線程?

          2)數(shù)據(jù)類型更豐富

          Memcached 數(shù)據(jù)類型非常單一,只支持 String 數(shù)據(jù)類型,在業(yè)務(wù)實(shí)現(xiàn)上就非常有瓶頸。

          而 Redis 支持 string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(sorted set:有序集合) 等……豐富的數(shù)據(jù)類型可以讓 Redis 在業(yè)務(wù)上大展拳腳。

          這也是 Redis 能代替 Memcached 最重要的原因之一。

          相關(guān)閱讀:Redis 的 8 大應(yīng)用場(chǎng)景!

          并且,Memcached 值最大上限為:1M,而 Redis 最大可以到:1GB。

          3)數(shù)據(jù)持久化

          Memcached 不支持持久化,Redis 支持。

          緩存服務(wù)器斷電后,Memcached 的數(shù)據(jù)是不能恢復(fù)的,而 Redis 可以將數(shù)據(jù)保久化在磁盤中,服務(wù)器重啟的后可以加載再次使用,不會(huì)造成數(shù)據(jù)斷電丟失。

          比如,有些數(shù)據(jù)是直接放在緩存數(shù)據(jù)庫中的,其他地方可能沒有備份,如果丟失了,那可能會(huì)造成業(yè)務(wù)影響,這也是 Redis 非常有用的一個(gè)保障特性。

          總結(jié)

          好了,今天棧長(zhǎng)列舉了 6 個(gè)經(jīng)典的即將被淘汰的技術(shù)或框架,雖然這些技術(shù)現(xiàn)在面臨淘汰,但它們?cè)?jīng)也風(fēng)光過,值得敬畏。

          另外,雖然這些技術(shù)要被淘汰了,但不說明它們沒有用了,它們依然在被運(yùn)用,只是現(xiàn)在不是主流了。

          最后,在大家的開發(fā)歷程中,你都遇到過哪些曾經(jīng)很風(fēng)光,但現(xiàn)在即將被淘汰的技術(shù)呢?歡迎大家留言分享討論~

          最近熱文:
          1、Spring Cloud 2020 版本重大變革!
          2、Spring Boot 如何快速集成 Redis?
          3、Mybatis 框架 SQL 注入攻擊的 3 種方式!
          4、寫了個(gè)全局變量的bug,被同事們打臉!
          5、Java 14 祭出神器,Lombok 被干掉了?
          6、Java 14 祭出增強(qiáng)版 switch,真香??!
          7、Spring Boot 2.3 優(yōu)雅關(guān)閉新姿勢(shì),真香!
          8、Spring Boot 干掉了 Maven 擁抱 Gradle!
          9、公司來了個(gè)新同事不會(huì)用 Lombok!
          10、Tomcat 又爆出高危漏洞!8.5 ~ 10 中招…
          掃碼關(guān)注Java技術(shù)棧公眾號(hào)閱讀更多干貨。

          點(diǎn)擊「閱讀原文」獲取面試題大全~

          瀏覽 59
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产成人三级在线观看视频 | 伊人大香蕉在线视频 | 亚洲性爱成人 | A片视频在线大全 | 91在线一区|