java web現(xiàn)在流行用什么框架?

      網(wǎng)友投稿 711 2025-04-01

      Java是開源的,框架很多,這些框架都能解決特定的問題,提高開發(fā)效率、簡化我們的代碼復雜度,現(xiàn)在除了很多大家通用的一些主流框架外,很多公司針對自己的業(yè)務會自定義一些公司內(nèi)部的框架,當然作為學習者我們首先要清楚Javaweb都有哪些框架需要學習。

      回答這個問題首先要看我們的項目規(guī)模,對于”體量”較小的單應用項目,和需要處理海量數(shù)據(jù)、高并發(fā)的分布式項目所學習使用的框架還是不同的。

      對于“體量”較小的單應用項目:

      ORM型框架,很多Javaweb程序都需要使用關系數(shù)據(jù)庫來進行數(shù)據(jù)的持久化,所以對于這種需要進行數(shù)據(jù)庫操作的框架,也就是對JDBC進行封裝的ORM框架是需要學習的,目前比較流行的是基于SQL的mybatis框架,這是一個輕量級的ORM框架,學習使用起來比較容易上手,同類型的還有Hibernate框架。

      MVC型框架,MVC把程序從邏輯上分為視圖層、控制層、模型層,各層各司其職,之間是相互調(diào)用的關系而不是相互依賴的關系,這種模式能很好的適應需求的變化及軟件的升級變更。目前應用較多的MVC框架是spring MVC框架,這個框架有清晰的角色劃分,有強大而直接的配置方式,高效的綁定和驗證等很多優(yōu)勢。較早的Struts2框架也是MVC框架。

      Spring框架,其實Java的從業(yè)者很多都繞不開Spring ,Spring家族有很多“工具”,編程思想從面相過程到面相對象是一個巨大的進步,然而隨著程序越來越復雜,對象越來越多,高效的“管理”及應用這些對象變得越來越重要,Spring的IoC就是把對象的創(chuàng)建、“管理”交由Spring容器來進行,來實現(xiàn)控制反轉(zhuǎn),同時提供了各種注入值(DI)的方式,大大提高和簡化了我們的工作,這就是javaweb需要學習的spring的IoC/DI;我們程序的業(yè)務比較復雜時,除了要完成核心功能外,還需要完成注入異常處理、日志記錄、事務處理等常規(guī)功能,這些常規(guī)的操作比較耗費精力,springAOP(面向切面編程)就是解決這個問題的。

      Javaweb需要學習一些前端框架,尤其是問題中提到的已經(jīng)寫好了數(shù)據(jù)接口,或者是已經(jīng)有了簡單的后臺,前端框架jQuery是一定要學習的,如果項目基于效率考慮,需要前后端分離,可以學習vue等框架。

      對于海量數(shù)據(jù)、高并發(fā)類型的分布式項目,這種類型項目的特點就是前面提到的需要處理的數(shù)據(jù)量大,例如雙十一阿里需要處理的訂單數(shù)據(jù),比如12306的搶票等。

      提升查詢效率的緩存數(shù)據(jù)庫框架Redis,這個框架在單應用程序中為了提升數(shù)據(jù)的讀取效率也可以使用,先把數(shù)據(jù)從關系數(shù)據(jù)庫通過Redis存放到緩存中,從緩存中讀取數(shù)據(jù)的速度比直接從硬盤上讀取就要高多了,另外Redis還能進行集群配置主從服務器等,使用非常方便,同類型的還有memcached框架;

      在分布式中,服務集群中的負載均衡特別重要,Nginx是一個高性能的HTTP和反向代理服務框架,支持多種負載均衡算法;

      java web現(xiàn)在流行用什么框架?

      消息隊列框架:RabbitMQ、ActiveMQ、RocketMQ等,在電商系統(tǒng)中,當結算訂單后,需要進行積分的變化等操作,這些操作的量很大,如果等積分變化結束后在通知用戶結算成功,顯然不可行,那么此時積分的變更操作交由消息隊列來完成。

      搜索框架,為了提升搜索的效率,創(chuàng)建搜索索引庫及中文搜索分詞等,可以使用solr框架,同類型的還有elasticsearch

      用于文件使用的分布式文件系統(tǒng)框架Fastdfs

      Spring boot框架,簡化了spring 的復雜配置,提供了Thymeleaf模板,很多微服務都是基于Springboot的;

      微服務框架,把應用拆分成若干個為服務后,很好的適用了高并發(fā)及海量數(shù)據(jù)的處理,但是微服務的管理也很重要,目前基于服務注冊、服務監(jiān)控的框架有Dubbo+zookeeper,還有SpringCloud,里面包括SpringCloud Eureka,SpringCloud Ribbon,SpringCloud Feign,SpringCloudHystrix,SpringCloudZuul,SpringCloud Config,SpringCloud ZipKin,SpringCloud Sleuth等;

      其它框架,還有很多根據(jù)項目特定要求的一些框架,例如進行日志記錄的log4j框架,進行認證和授權的shiro框架,工作流處理的Activite框架等。

      總結一下:學習框架最好的方式就是在實際項目中去應用,這對框架的原理、應用流程都能有很好的學習效果,如果單純的做一些簡單的Demo,框架的很多應用場景、優(yōu)化、注意事項等是學習不全面的。

      ----------------------------------

      本文轉(zhuǎn)自QFdongdong博客51CTO博客

      javaweb Java

      版權聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權內(nèi)容。

      版權聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權內(nèi)容。

      上一篇:如何不打開Excel文件刪除行?
      下一篇:wps表格中怎樣快速復制相同內(nèi)容(wps怎么快速復制同樣的內(nèi)容)
      相關文章
      在线日韩日本国产亚洲| 亚洲五月综合网色九月色| 亚洲ts人妖网站| 亚洲级αV无码毛片久久精品| 亚洲国产精品13p| 亚洲GV天堂GV无码男同| 亚洲欧美成人综合久久久| 国产亚洲福利在线视频| 亚洲综合偷自成人网第页色| 亚洲国产日韩视频观看| 亚洲天然素人无码专区| 亚洲人成小说网站色| 男人天堂2018亚洲男人天堂| 久久亚洲国产成人影院| 亚洲日韩国产欧美一区二区三区 | 浮力影院亚洲国产第一页| 亚洲国产小视频精品久久久三级 | 日本亚洲高清乱码中文在线观看| 亚洲国产无线乱码在线观看 | 久久精品亚洲视频| 亚洲av无码一区二区三区不卡| 亚洲高清专区日韩精品| 久久久亚洲精品国产| 亚洲视频免费在线观看| 亚洲日韩中文字幕| 亚洲国产成a人v在线观看| 亚洲综合欧美色五月俺也去| 亚洲精品无码专区在线| 丰满亚洲大尺度无码无码专线 | 春暖花开亚洲性无区一区二区| 亚洲AV成人一区二区三区观看| 国产成人精品亚洲一区| 亚洲精品天堂成人片?V在线播放| 中文亚洲AV片在线观看不卡| 亚洲精品无码MV在线观看| 亚洲AV无码乱码国产麻豆穿越| 亚洲自偷精品视频自拍| 色偷偷女男人的天堂亚洲网| 亚洲精品国产suv一区88| 亚洲AV无码成H人在线观看| 久久夜色精品国产亚洲av|