回覆列表
-
1 # IT程式設計學習棧
-
2 # 小精靈zx
目前來說, spring2、spring3struts2hibernate2、hibernate3ibatis、mybatisejb3基本就是Java的主流框架
-
3 # 小太郎桂
目前的主流框架是springboot,多數公司的新專案都將是springboot,多數公司的老專案可能是ssm,未來框架趨勢借用springboot的一句話,約定大於配置,未來封裝的應該會更加嚴密,程式設計師將更多的著眼於程式碼的整體最佳化與業務邏輯。
首先,我先說一下Java最主流的框架是:SSM
原因主要如下:
1.Spring,它常年雄踞於企業開發必選框架之首,需要開發者從原理、應用、擴充套件等全方位角度掌握,最終可以搭建屬於我們的平臺。
2.Mybatis,透過熟練運用原始碼我們可以深入、詳細、系統的瞭解Mybatis的每一個脈絡。
3.SpringMVC,從企業的實際應用到框架的底層原理,深入講解MVC機制,手動實現SpringMVC框架實現過程不僅會應用,我們可以實現自己的SpringMVC,直通架構的必修課。
其次企業主流框架用什麼,也不能一概而論。需要有所劃分,市場需求可以分為兩種。其一是傳統企業開發,其二是網際網路企業開發。
常用技術有:struts1/2,Spring/mvc/boot/cloud,Hibernate/MyBatis。
在此論述的是JavaEE,JavaME另有他論。技術核心原理、理論知識、優點缺點、功能作用等就不再展開描述。
一、傳統企業開發要求安全、穩定,易於維護。常用於政府機關、企業OA、ERP等管理系統,對於此型別系統常用框架是Struts1/2+Spring+Hibernate/MyBatis/Ibatis/Servlet,至今統計很多政府系統多用老框架,不易更新擴充套件。為便於維護與新系統融合,所以常採用穩定的系統架構技術。也有部分採用Spring mvc,迭代舊的系統。
常有組合有:Struts + Spring+ Mybatis,Spring MVC + Hibernate,Spring mvc+MyBatis,Struts1/2Hibernate
二、網際網路企業開發要求高併發、高用性、易擴充套件。常用於科技企業,互動系統、支付系統、購物系統等。而針對這些系統老技術框架不易於開發實現分散式、版本更新、擴充套件,近幾年出現不少分散式技術。
常使用spring boot,spring cloud的套件組裝,拆分各子業務系統,對核心業務服務進行解耦劃分,可實現靈活組裝,極大提升業務可複用性、拆分性。
另外,採用許可權分級管理,非同步呼叫及服務降級等方式,有利保證系統的穩定性。
Spring cloud的元件有,服務發現(Netflix Eureka),客服端負載均衡(Netflix Ribbon),斷路器(Netflix Hystrix),分散式配置(Spring Cloud Config)。
結合k8s,docker編排,讓spring cloud得到更有效的發揮其作用。
舉例架構如下:
系統採用一系列穩定的技術框架,實現資料的讀寫分析、資料清洗、整合、彙總、統計分析、搜尋引擎、推薦分析,得出可信度、高精度的結果。
基於nodejs、vue的混合前端開發體系實現前後分離,Spring mvc,Spring boot,Spring Cloud應用開發框架以及SOA的理念,Java、NLP提供語義分析;透過CDN,業務路由、多重負載均衡以及分散式快取、資料庫儲存等技術,提供一個高可靠、高併發、可擴充套件的大型分散式系統。
技術細分
核心框架:Spring Boot,Spring cloud
安全框架:Apache Shiro
檢視框架:Spring MVC
服務端驗證:Hibernate Validator
任務排程:Quartz
持久層框架:Mybatis、Mybatis plus
資料庫連線池:Alibaba Druid
快取框架:Ehcache
日誌管理:SLF4J、Log4j
工具類:Apache Commons、Jackson、Xstream、
後端渲染模板引擎: Thymeleaf
再次感謝能給我這次機會回答這個問題。