Java 程序員方向太多,且不說移動開發(fā)、大數(shù)據(jù)、區(qū)塊鏈、人工智能這些,大部分 Java 程序員都是 Java Web/后端開發(fā)。那作為一名 Java Web 開發(fā)程序員必須需要熟悉哪些框架呢?
今天,給大家列舉了一些通用的、必須掌握的框架,學(xué)會這些,20K+ 不是問題。
1.Spring
毫無疑問,Spring 框架現(xiàn)在是 Java 后端框架家族里面最強大的一個,其擁有 IOC 和 AOP 兩大利器,大大簡化了軟件開發(fā)復(fù)雜性。并且,Spring 現(xiàn)在能與所有主流開發(fā)框架集成,可謂是一個萬能框架,Spring 讓 JAVA 開發(fā)變得更多簡單。
2.Spring MVC
Spring MVC 是一個 MVC 開源框架,用來代替 Struts。它是 Spring 項目里面的一個重要組成部分,能與 Spring IOC 容器緊密結(jié)合,以及擁有松耦合、方便配置、代碼分離等特點,讓 JAVA 程序員開發(fā) WEB 項目變得更加容易。
3.Spring Boot
Spring Boot 是 Spring 開源組織下的一個子項目,也是 Spring 組件一站式解決方案,主要是為了簡化使用 Spring 框架的難度,簡省繁重的配置。
Spring Boot提供了各種組件的啟動器(starters),開發(fā)者只要能配置好對應(yīng)組件參數(shù),Spring Boot 就會自動配置,讓開發(fā)者能快速搭建依賴于 Spring 組件的 Java 項目。
4.Spring Cloud
Spring Cloud 是一系列框架的有序集合,是目前最火熱的微服務(wù)框架首選,它利用Spring Boot 的開發(fā)便利性巧妙地簡化了分布式系統(tǒng)基礎(chǔ)設(shè)施的開發(fā),如服務(wù)發(fā)現(xiàn)注冊、配置中心、消息總線、負(fù)載均衡、斷路器、數(shù)據(jù)監(jiān)控等,都可以用 Spring Boot 的開發(fā)風(fēng)格做到一鍵啟動和部署。
5.Mybatis/ iBatis
iBatis 曾是開源軟件組 Apache 推出的一種輕量級的對象關(guān)系映射持久層(ORM)框架,隨著開發(fā)團隊轉(zhuǎn)投Google Code 旗下,ibatis 3.x 正式更名為 Mybatis,即:iBatis 2.x, MyBatis 3.x。
6.Hibernate
Hibernate 是一個開放源代碼的對象關(guān)系映射框架,它對 JDBC 進行了非常輕量級的對象封裝,它將 POJO 與數(shù)據(jù)庫表建立映射關(guān)系,是一個全自動的 orm 框架。Hibernate 可以自動生成 SQL 語句,自動執(zhí)行,使得 Java 程序員可以隨心所欲的使用對象編程思維來操作數(shù)據(jù)庫。
7.Dubbo
Dubbo是阿里巴巴開源的基于 Java 的高性能 RPC 分布式服務(wù)框架,現(xiàn)已成為 Apache 基金會孵化項目。使用 Dubbo 可以將核心業(yè)務(wù)抽取出來,作為獨立的服務(wù),逐漸形成穩(wěn)定的服務(wù)中心,可用于提高業(yè)務(wù)復(fù)用靈活擴展,使前端應(yīng)用能更快速的響應(yīng)多變的市場需求。
8.Netty
Netty 是由 JBOSS 提供的一個開源的、異步的、基于事件驅(qū)動的網(wǎng)絡(luò)通信框架,用 Netty 可以快速開發(fā)高性能、高可靠性的網(wǎng)絡(luò)服務(wù)器和客戶端程序,Netty 簡化了網(wǎng)絡(luò)應(yīng)用的編程開發(fā)過程,使開發(fā)網(wǎng)絡(luò)編程變得異常簡單。
9.Shiro
Apache Shiro是一個強大而靈活的開源安全框架,它干凈利落地處理身份認(rèn)證,授權(quán),企業(yè)會話管理和加密。
10.Ehcache
EhCache 是一個純Java的進程內(nèi)緩存框架,具有快速、精干等特點,是 Hibernate 中默認(rèn)的CacheProvider。它使用的是 JVM 的堆內(nèi)存,超過內(nèi)存可以設(shè)置緩存到磁盤,企業(yè)版的可以使用 JVM 堆外的物理內(nèi)存。
11.Quartz
Quartz 是一個基于 Java 的廣泛使用的開源的任務(wù)調(diào)度框架,做過定時任務(wù)的沒有沒用過這個框架的吧?
12.Velocity
Velocity 是一個基于 Java 的模板引擎,簡單而強大的模板語言為各種 Web 框架提供模板服務(wù),來適配 MVC 模型。
13.jQuery
jQuery是一個快速、簡潔的 JavaScript 框架,它封裝 JavaScript 常用的功能代碼,提供一種簡便的 JavaScript 設(shè)計模式,極大地簡化了 JavaScript 編程。
雖然哥好久沒做 Web 開發(fā)了,但哥也不曾忘記,也還記得一些常用的寫法,如:
$("#wx").html("javastack");
14.JUnit
JUnit 是一個 Java 語言的單元測試框架,絕大多數(shù) Java 的開發(fā)環(huán)境都已經(jīng)集成了 JUnit 作為其單元測試的工具。
15.Log4j
Log4j 是 Apache 的一個開源日志框架,通過 Log4j 我們可以將程序中的日志信息輸出到控制臺、文件等來記錄日志。作為一個最老牌的日志框架,它現(xiàn)在的主流版本是 Log4j2。Log4j2是重新架構(gòu)的一款日志框架,拋棄了之前 Log4j 的不足,以及吸取了優(yōu)秀日志框架 Logback 的設(shè)計。
如果上面的大部分沒用過,甚至都沒聽說過,那就懷疑你是不是個假程序員了,要加油了。
這些都是 Java 程序員必備的開發(fā)框架,有些不一定是首選的選擇,但這些一定是 Java 程序員必備的。