Java匹馬行天下之一頓操作猛如虎,框架作用知多少?


流行框架:

  框架就是開發人員定義好的一套模板,程序員只需要往模板中添加響應的代碼即可,填完代碼,項目就完成了。所以框架存在的意義以及我們學習框架的目的就是想辦法能夠讓程序員快速的完成整個項目的開發。理解框架的思路可以看昨天寫的博客《致Java程序員的一封信》,系統學習請看《學習目錄及學習資源獲取》下面我來對各大流行框架做個梗概:

Struts

  先說第一個框架Struts,它是干嘛的,原來我們寫Servlet的時候不停的用Request,Response進行讀取數據傳輸數據這樣的操作,那么Struts可以讓我們能夠快速的完成數據的交互,但Struts也有缺點,它的整個框架的體量是比較大的,所以目前整個市場市面上使用Struts的公司並不多,但是我們用Struts可以快速入門,體驗一下用框架的“酸爽”滋味。

Hibernate

  再說一個框架Hibernate,它是用來幫我們完成一個持久層的這樣的一個操作,什么是持久層,就是之前提到的JDBC,它把JDBC的操作都封裝好了,所以Hibernate框架是一個全自動的框架,就是我們會把所有寫好的那個類和數據庫里面的表做一個關系映射,也就是說,你去操作類,其實就是在操作表,那這樣的話,我們在寫代碼的時候,就不用管表怎么樣了,直接去管這個類就可以了。所以Hibernate有一個很顯著的效果,就是我們在想查詢數據,就不需要再去找那個表了,直接找類,通過類去查詢數據,也就是說,它實際上是幫我們通過那個類,幫我們映射到了那個表里面的東西,所以這時候我們操作全都是操作類。那這個時候大家想一下,Java的東西要想和數據庫產生關聯,是不是必須要有JDBC,所以Hibernate它的本質就是把原來我們寫的JDBC的東西重新進行了一個封裝,封裝到我們程序員連SQL語句都不需要寫,Hibernate它底層自動的幫我們去拼接SQL語句,並且它還能幫我們把SQL語句運行,運行完的結果集也不需要程序員去管,它也會自動的把這個結果集內容給你解析成Java的對象,所以它直接就能拿到結果了,因此Hibernate又被稱作為一個全自動的持久層框架。但是由於它是全自動的,它的底層封裝的特別多,那這時候就導致非常大的一個問題就是它的執行效率比較低,因為它封裝的東西實在太多了,太冗余,太復雜了,反而降低了它的執行效率,因為它的執行效率不高,因此現在整個市場上對Hibernate的使用率也不高,從這來看,Hibernate似乎也不是一個非常重要的框架,不過在學Hibernate的過程中會學到一個非常重要的概念叫ORM,叫做對象關系映射,就是把類和數據庫的表做一個映射關系,這個很重要,在后面我要提到的Mybatis,JPA,SpringData中最主要的核心都是這個ORM概念。對Hibernate大家簡單了解,能夠寫一些基本的代碼就可以了。

Spring

  Spring框架大家都聽過吧,這個框架特別重要,在目前整個市場上來看的話是基本上有一個一統江湖的趨勢。Spring是整個Java體系里使用頻率最高,穩定性最好,而且在各個領域都能遇到的一個框架。那什么是Spring呢?其實你可以把Spring理解為一個管家,如果我們不用Spring的話,我們之前寫的代碼實際上是雜亂無章的,這一塊,那一塊,然后用各種各樣的關聯關系把它們綁在一起,整個項目是雜亂無章的,那么我們用了Spring之后,它就把每個區域的代碼進行分離,自己是自己的,然后由Spring在中間做一個調控,Spring之所以能火起來,就是因為它的做管理的理念好,它去協調各個框架,協調各塊代碼,這是Spring的工作。

SpringMVC

  學了Spring,就來學Spring的第一個子項目叫SpringMVC,一看名字,MVC,這個在學JavaWeb的時候聽過吧,SpringMVC其實就是處理Servlet里的那些內容,把那些內容給替換調了,也就是說用Spring來寫MVC層的代碼,這樣就比較方便,簡單,而且SpringMVC封裝的前端處理是真的非常方便,方便到讓程序員爽到不行的地步。

MyBatis

  MyBatis是一個做持久層的框架,其實就是相當於替換了Hibernate,之前說Hibernate的缺點是封裝的東西太多了,MyBatis就比較聰明,它知道不需要給程序員封裝太多,它只封裝了一半,另外一半留給程序員自己完成。那它封裝了什么呢?它把從結果集里面我們查詢SQL之后把結果集的內容封裝到Java對象里面,這一塊它保留了,然后SQL語句它不管,讓程序員根據自己的需求自己寫,然后它幫程序員自動執行,自動處理結果集的問題,所以MyBatis又被稱為半自動的持久層框架。我們聽了全自動和半自動,那手動的是誰?其實就是DBUtil和JDBC的操作。這個是純手動,什么都要自己寫,然后到MyBatis這,你寫一半,它幫你干一半,而Hibernate是全自動,你什么都不用管,挺方便的,但Hibernate封裝太厚重,JDBC又太麻煩,所以MyBatis恰好處在它們兩個之間的一個位置,所以目前市面上使用MyBatis的公司還是特別多的。

JPA

  JPA全程Java Persistence API,它叫Java持久層API,API說白了就是Java官方給的一套標准,一堆注解,然各個框架自己想辦法去實現,在JPA的視線中其實Hibernate是實現最好的,因此我們在使用JPA的時候感覺很使用Hibernate一樣,特別像。

SpringBoot

  SpringBoot是近幾年火起來的一個框架,也是Spring家族體系里面的,SpringBoot把整個Web應用,就網頁的應用把它的啟動放在了一個類里面,我們之前寫的所有的包括Servlet,JSP包括用一些框架寫的項目,這些項目想啟動的話,我們需要把它放到服務器(Tomcat)中,那到了SpringBoot里面就不是這樣了,你寫一個很普通的Java類,在這個類上寫行注解,然后右鍵運行Run這個類,你一運行,它就幫你啟動了一個服務,Java中有很多個類,這樣每個類都能右鍵運行,一個項目就可以把它分割成非常非常多個小的服務,其實這個概念就是所謂的叫微服務的一個基本概念,那這時候就產生了關於微服務的一個應用,SpringBoot官方曾經放出過這么一句話,就是用一百多個字符就可以搞定一個Web程序的開發,由此可見它的整個的封裝的體系是非常健全的,它把Tomcat,還有Apache,Jetty這些個服務器全都封裝起來了,所以我們用SpringBoot的時候就不需要Tomcat了,它內置了,里面直接帶了,所以SpringBoot官方的意義其實是非常明確的,就是程序員就乖乖寫代碼就行了,其它的環境上的工作,SpringBoot全都提供給你了,你直接拿去用就行了。所以SpringBoot學起來還是挺簡單,也挺好用的。

Maven

  這個Maven不是框架,而是一個構建工具,我們用框架寫的項目中需要導入大量的各種不同的jar包,這時候jar包的維護以及jar包版本的管理就會成為非常大的一個問題,如果我們用Maven,就能很好的解決這個問題了,Maven是一個項目自動的構建工具,它可以幫我們自動管理和下載jar包,而且在我們整個項目打包進行上線的時候,它也會幫我們自動打包,而且打包的時候還特別方便,把一些沒用的東西給你干掉,建議好好學一下Maven,很多框架都要用到Maven。

SVN協同開發工具

  我們以后在公司寫項目都是團隊協同的,不是一個人搞的,是很多人一起開發同一個項目,這時就需要一個能夠協同的開發工具,比如一個團隊有十個人,那十個人一起開發一個項目,他們的代碼肯定需要放在一起,放一起的話,就需要能提交能下載,我先把代碼下載下來然后進行編寫,寫完后再提交上去,每個人都應該有這樣的操作,那這個時候就需要能夠協同的開發工具,目前市面上比較常見的協同開發工具有兩個,一個叫SVN,一個叫Git,SVN是一個比較老的工具了,Git是比較年輕的,就看你用哪一個了。

 

此篇完

 

以上就是關於流行框架的一個梗概了,希望能對大家有所幫助。我想應該說全面了吧,要是沒全面也不要緊,后面再繼續補充。
看完有收獲?那么希望老鐵別吝嗇你的三連擊哦
1、點個推薦,讓更多的人看到這篇文章
2、關注我的原創微信公眾號【泰斗賢若如】,第一時間閱讀我的文章
3、歡迎關注我的博客

 

 

 【原創聲明】:本人原創:https://www.cnblogs.com/zyx110/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM