大概解釋下spring的模塊和生態圈都有哪兒些
Spring框架是一個輕量級的企業級開發的一站式解決方案。所謂解決方案就是可以基於spring解決JAVAEE開發的所有問題。Spring框架主要提供了IOC容器、AOP、數據訪問、WEB開發、消息、測試等相關技術的支持。
Spring使用簡單的POJO(Plainold java object,即無任何限制的普通java對象)來進行企業級開發。每一個spring管理的java對象都稱之為bean;而spring提供了一個IOC容器用來初始化對象,解決對象間的依賴管理和對象的使用。
可參考的網站為:"https://spring.io/guides"和"https://docs.spring.io/spring/docs/"
1.spring的模塊
(1)核心容器(core container)
Spring-core:核心工具類,spring其他模塊大量使用spring-core;
Spring-beans:spring定義bean的支持;
Spring-context:運行時spring容器;
Spring-context-support:spring容器對第三方包的集成支持;
Spring-expression:使用表達式語言在運行時查詢和操作對象。
(2)AOP
Spring-AOP:基於代理的AOP支持;
Spring-aspects:基於aspectJ的AOP支持。
(3)消息(Messaging)
Spring-messaging:對消息架構和協議的支持。
(4)WEB
Spring-web:提供基礎的WEB集成的功能,在WEB項目中提供spring的容器;
Spring-webmvc:提供基於servlet的spring MVC;
Spring-websocket:提供websocket功能;
Spring-webmvc-portlet:提供portlet環境支持。
(5)數據訪問
Spring-jdbc:提供以JDBC訪問數據庫的支持;
Spring-TX:提供編程式和聲明式的事物支持;
Spring-ORM:提供對對象/關系映射技術的支持;
Spring-OXM:提供對對象/XML映射技術的支持;
Spring-JMS:提供對JMS的支持。
2.Spring的生態
Spring發展到現在已經不僅僅是spring框架本身的內容,spring目前提供了大量的基於spring的項目,可以用來更深入地降低我們的開發難度,提供開發效率。
目前spring的生態裏主要有以下項目:
Spring boot:使用默認開發配置來實現快速開發;
Spring XD:用來簡化大數據應用開發;
Spring cloud:為分布式系統開發提供工具集;
Spring data:對主流的關系型和nosql數據庫的支持;
Spring integration:通過消息機制對企業集成模式(EIP)的支持;
Spring batch:簡化及優化大量數據的批處理操作;
Spring security:通過認證和授權保護應用;
Spring HATEOAS:基於HATEOAS原則簡化REST服務開發;
//HATEOAS可參考: http://blog.csdn.net/jackyrongvip/article/details/9218817
Spring social:與社交網絡API(如Facebook、新浪微博等)的集成;
Spring AMQP:對基於AMQP的消息的支持;
Spring mobile:提供對手機設備檢測的功能,給不同的設備返回不同的頁面的支持;
Spring for Android:主要提供在Android上消費restfulapi的功能;
Spring web flow:基於spring MVC提供基於向導流程式的WEB應用開發;
Spring web services:提供了基於協議有限的SOAP/WEB服務;
Spring LDAP:簡化使用LDAP開發;
Spring session:提供一個API及實現來管理用戶會話信息。
本文出自 “你可以選擇不平凡” 博客,請務必保留此出處http://ylcodes01.blog.51cto.com/5607366/1961974
大概解釋下spring的模塊和生態圈都有哪兒些