Java 程序員方向太多,且不說移動開發、大數據、區塊鏈、人工智能這些,大部分 Java 程序員都是 Java Web/後端開發。那做爲一名 Java Web 開發程序員必須須要熟悉哪些框架呢?html
今天,棧長我給你們列舉了一些通用的、必須掌握的框架,學會這些,20K+ 不是問題。前端
1.Spring 毫無疑問,Spring 框架如今是 Java 後端框架家族裏面最強大的一個,其擁有 IOC 和 AOP 兩大利器,大大簡化了軟件開發複雜性。而且,Spring 如今能與全部主流開發框架集成,可謂是一個萬能框架,Spring 讓 JAVA 開發變得更多簡單。java
官網:jquery
源碼:程序員
github.com/spring-proj…github
推薦:面試
Java 必看的 Spring 知識彙總spring
更多請在Java技術棧微信公衆號後臺回覆關鍵字:spring。sql
2.Spring MVC Spring MVC 是一個 MVC 開源框架,用來代替 Struts。它是 Spring 項目裏面的一個重要組成部分,能與 Spring IOC 容器緊密結合,以及擁有鬆耦合、方便配置、代碼分離等特色,讓 JAVA 程序員開發 WEB 項目變得更加容易。
官網:
源碼:
推薦:
從 0 開始手寫一個 Spring MVC 框架
更多請在Java技術棧微信公衆號後臺回覆關鍵字:mvc。
3.Spring Boot Spring Boot 是 Spring 開源組織下的一個子項目,也是 Spring 組件一站式解決方案,主要是爲了簡化使用 Spring 框架的難度,簡省繁重的配置。
Spring Boot提供了各類組件的啓動器(starters),開發者只要能配置好對應組件參數,Spring Boot 就會自動配置,讓開發者能快速搭建依賴於 Spring 組件的 Java 項目。
官網:
源碼:
推薦:
Spring Boot 核心配置文件詳解 Spring Boot 2.x 啓動全過程源碼分析 20 道 Spring Boot 面試題答案 更多請在Java技術棧微信公衆號後臺回覆關鍵字:boot。
4.Spring Cloud Spring Cloud 是一系列框架的有序集合,是目前最火熱的微服務框架首選,它利用Spring Boot 的開發便利性巧妙地簡化了分佈式系統基礎設施的開發,如服務發現註冊、配置中心、消息總線、負載均衡、斷路器、數據監控等,均可以用 Spring Boot 的開發風格作到一鍵啓動和部署。
官網:
projects.spring.io/spring-clou…
源碼:
推薦:
Spring Cloud 最新 Finchley 版本踩坑 微服務爲何選Spring Cloud? Spring Cloud 多版本怎麼選擇? 更多請在Java技術棧微信公衆號後臺回覆關鍵字:cloud。
5.Mybatis/ iBatis iBatis 曾是開源軟件組 Apache 推出的一種輕量級的對象關係映射持久層(ORM)框架,隨着開發團隊轉投Google Code 旗下,ibatis 3.x 正式改名爲 Mybatis,即:iBatis 2.x, MyBatis 3.x。
官網:
源碼:
推薦:
Mybatis 傳遞多個參數的 4 種方式
更多請關注Java技術棧微信公衆號,在後臺回覆:mybatis。
6.Hibernate Hibernate 是一個開放源代碼的對象關係映射框架,它對 JDBC 進行了很是輕量級的對象封裝,它將 POJO 與數據庫表創建映射關係,是一個全自動的 orm 框架。Hibernate 能夠自動生成 SQL 語句,自動執行,使得 Java 程序員能夠爲所欲爲的使用對象編程思惟來操做數據庫。
官網:
源碼:
7.Dubbo Dubbo是阿里巴巴開源的基於 Java 的高性能 RPC 分佈式服務框架,現已成爲 Apache 基金會孵化項目。使用 Dubbo 能夠將核心業務抽取出來,做爲獨立的服務,逐漸造成穩定的服務中心,可用於提升業務複用靈活擴展,使前端應用能更快速的響應多變的市場需求。
官網:
源碼:
推薦:
Dubbo 架構設計詳解 史上最全 40 道 Dubbo 面試題及答案 更多請在Java技術棧微信公衆號後臺回覆關鍵字:dubbo。
8.Netty Netty 是由 JBOSS 提供的一個開源的、異步的、基於事件驅動的網絡通訊框架,用 Netty 能夠快速開發高性能、高可靠性的網絡服務器和客戶端程序,Netty 簡化了網絡應用的編程開發過程,使開發網絡編程變得異常簡單。
官網:
源碼:
9.Shiro Apache Shiro是一個強大而靈活的開源安全框架,它乾淨利落地處理身份認證,受權,企業會話管理和加密。
官網:
源碼:
10.Ehcache EhCache 是一個純Java的進程內緩存框架,具備快速、精幹等特色,是 Hibernate 中默認的CacheProvider。它使用的是 JVM 的堆內存,超過內存能夠設置緩存到磁盤,企業版的可使用 JVM 堆外的物理內存。
官網:
源碼:
推薦:
Ehcache介紹及整合Spring實現高速緩存
更多請在Java技術棧微信公衆號後臺回覆關鍵字:ehcache。
11.Quartz Quartz 是一個基於 Java 的普遍使用的開源的任務調度框架,作過定時任務的沒有沒用過這個框架的吧?
官網:
源碼:
12.Velocity Velocity 是一個基於 Java 的模板引擎,簡單而強大的模板語言爲各類 Web 框架提供模板服務,來適配 MVC 模型。
官網:
源碼:
13.jQuery jQuery是一個快速、簡潔的 JavaScript 框架,它封裝 JavaScript 經常使用的功能代碼,提供一種簡便的 JavaScript 設計模式,極大地簡化了 JavaScript 編程。
雖然哥很久沒作 Web 開發了,但哥也未曾忘記,也還記得一些經常使用的寫法,如:
$("#wx").html("javastack"); 官網:
源碼:
14.JUnit JUnit 是一個 Java 語言的單元測試框架,絕大多數 Java 的開發環境都已經集成了 JUnit 做爲其單元測試的工具。
官網:
源碼:
15.Log4j Log4j 是 Apache 的一個開源日誌框架,經過 Log4j 咱們能夠將程序中的日誌信息輸出到控制檯、文件等來記錄日誌。做爲一個最老牌的日誌框架,它如今的主流版本是 Log4j2。Log4j2是從新架構的一款日誌框架,拋棄了以前 Log4j 的不足,以及吸收了優秀日誌框架 Logback 的設計。
官網:
源碼:
logging.apache.org/log4j/2.x/s…
若是上面的大部分沒用過,甚至都沒據說過,那就懷疑你是否是個假程序員了,要加油了。
這些都是 Java 程序員必備的開發框架,有些不必定是首選的選擇,但這些必定是 Java 程序員必備的。。 歡迎工做一到五年的Java工程師朋友們加入Java羣: 891219277 羣內提供免費的Java架構學習資料(裏面有高可用、高併發、高性能及分佈式、Jvm性能調優、Spring源碼,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多個知識點的架構資料)合理利用本身每一分每一秒的時間來學習提高本身,不要再用"沒有時間「來掩飾本身思想上的懶惰!趁年輕,使勁拼,給將來的本身一個交代!