Spring基础知识整理

Spring模块:

①核心容器(Core Container)

Spring-Core:核心工具类,Spring 其他模块大量使用 Spring-Core

Spring-Beans:Spring 定义 Bean 的支持

Spring-Context:运行时 Spring 容器

Spring-Context-Support:Spring 容器对第三方包的集成支持

Spring-Expression:使用表达式语言在运行时查询和操作对象

②AOP

Spring-AOP:基于代理的 AOP 支持

Spring-Aspects:基于 AspectJ 的 AOP 支持

③消息(Messaging)

Spring-Messaging:对消息架构和协议的支持

④Web

Spring-Web:提供基础的 Web 集成的功能,在 Web 项目中提供 Spring 的容器

Spring-Webmvc:提供基于 Servlet 的Spring MVC

Spring-WebSocket:提供 WebSocket 功能

Spring-Webmvc-Portlet:提供 Protket 环境支持

⑤数据访问/集成(Data Access/Integration)

Spring-JDBC:提供以 JDBC 访问数据库的支持

Spring-TX:提供编程式和声明式的事务支持

Spring-ORM:提供对对象/关系映射技术的支持

Spring-OXM:提供对对象/xml映射技术的支持

Spring-JMS:提供对JMS的支持

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

Spring 项目:

Spring Boot:使用默认开发配置来实现快速开发

Spring XD:用来简化大数据应用开发

Spring Cloud:为分布式系统开发提供工具集

Spring Data:对主流的关系型和NoSQL数据库的支持

Spring Integration:通过消息机制对企业集成模式(EIP)的支持

Spring Batch:简化及优化大量数据的批处理操作

Spring Security:通过认证和授权保护应用

Spring HATEOAS:基于HATEOAS 原则简化 REST 服务开发

Spring Social:与社交网络 API 的集成

Spring AMQP:对基于 AMQP 的消息的支持

Spring Mobile:提供对手机设备检测的功能,给不同的设备返回不同的页面的支持

Spring for Android:主要提供在 Android 上消费 RESTful API 的功能

Spring Web Flow:基于 Spring MVC 提供基于向导流程式的 Web 应用开发

Spring Web Services:提供了基于协议有限的 SOAP/Web 服务

Spring LDAP:简化使用 LDAP 开发

Spring Session:提供一个 API 及实现来管理用户会话信息

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

Spring 框架四大原则:

①使用 POJO 进行轻量级和最小侵入式开发

②通过依赖注入和基于接口编程实现松耦合

③通过 AOP 和默认习惯进行声明式编程

④使用 AOP 和模板(template)减少模式化代码

Spring 所有功能的设计和实现都是基于此四大原则的。

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

依赖注入(dependency injection-DI):

控制反转(Inversion of Control-IOC)和依赖注入在 Spring 环境下时同等概念,控制反转使通过依赖注入实现的,依赖注入指的是容器负责创建对象和维护对象间的依赖关系,而不是通过对象本身负责自己的创建和解决自己的依赖。主要目的就是为了解耦,体现了一种”组合“的理念。

Spring IOC 容器(ApplicationContext)负责创建 Bean,并通过容器将功能类 Bean 注入到你需要的 Bean 中,Spring提供使用 xml、注解、Java配置、groovy配置实现 Bean 的创建和注入来配置元数据,元数据是描述数据的数据。元数据本身不具备任何可执行的能力,只能通过外界代码来对这些元数据行解析后进行一些有意义操作。Spring 容器解析这些配置元数据进行 Bean 初始化、配置和管理依赖。

声明 Bean 的注解:

①Component 组件,没有明确的角色

②Service 在业务逻辑层(service 层)使用

③Repository 在数据访问层(dao 层)使用

④Controller 在控制层(MVC->Spring MVC)使用

注入 Bean 的注解,一般情况下使用

①Autowired:Spring 提供的注解

②Inject:JSR-330 提供的注解

③Resource:JSR-250 提供的注解

 

Java Spring是一个广泛使用的轻量级开源框架,用于构建企业级Web应用程序。Spring框架提供了模块化的解决方案,简化了企业级应用的开发、管理以及依赖注入(Dependency Injection,DI)等功能。以下是一些Spring基础知识点的整理: 1. **IoC(Inversion of Control)和DI(Dependency Injection)**:Spring的核心思想就是IoC,它反转了传统的控制流动,使对象之间通过容器管理彼此的依赖关系,而不是硬编码。DI是IoC的一种具体实现方式,通过配置文件或注解自动为对象提供所需依赖。 2. **Bean的作用域和生命周期**:Spring中的Bean有多种作用域,如Singleton(单例)、Prototype(原型)、Request、Session等。每个Bean都有其生命周期,从创建、初始化到使用和销毁。 3. **Spring配置文件**:通常使用XML配置文件(如applicationContext.xml)或Java配置(@Configuration classes)来定义Spring应用的组件和依赖关系。 4. **AOP(Aspect Oriented Programming)**:Spring AOP支持面向切面编程,可以编写跨组件的行为,比如日志记录、事务管理等。 5. **Spring MVC**:Spring提供的web MVC架构,包括Controller处理HTTP请求,Model负责数据访问和业务逻辑,View负责渲染结果给用户。 6. **Spring Boot**:Spring Boot简化了Spring应用的初始搭建,自动配置了许多常用的功能,使得快速开发变得更容易。 7. **Spring Data**:提供了一套高级API,用于简化数据访问操作,如JPA、MongoDB等。 8. **Spring Security**:用于实现Web应用的安全管理,包括认证、授权、会话管理等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值