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是比較年輕的,就看你用哪個了spa

相關文章
相關標籤/搜索