1. 程式人生 > >大概解釋下spring的模塊和生態圈都有哪兒些

大概解釋下spring的模塊和生態圈都有哪兒些

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:基於aspectJAOP支持。

(3)消息(Messaging)

Spring-messaging:對消息架構和協議的支持。

(4)WEB

Spring-web:提供基礎的WEB集成的功能,在WEB項目中提供spring的容器;

Spring-webmvc:提供基於servletspring MVC

Spring-websocket:提供websocket功能;

Spring-webmvc-portlet:提供portlet環境支持。

(5)數據訪問

/集成(dataaccess/integration)

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的模塊和生態圈都有哪兒些