简单的说一下Spring,若有错..麻烦大家指出..
Spring 它是什么:Spring是一个开源框架;用于简化采用Java语言开发企业级程序的一个分层的框架;
Spring 的作用:
为什么要用Spring:
1、提供了IOC,AOP功能的容器,方便编程;
2、简化了J2EE或非J2EE的开发与设计;
3、Soring是一个轻量级的框架,并且是一个非侵入式的框架;
Spring 的七大模块:
1、Spring Aop;
什么是AOP:它是一种面向切面编程;
它的作用是什麽:就是为了将业务逻辑和非业务逻辑代码分离开来,
还可以让Spring事务得到了更广泛的使用;
2、Spring ORM;
什麽是Spring ORM:ORM并不是一种具体的产品,而是一类框架的总称,它概述了这类框架的基本特征:完成面向对象的程序设计语言到关系数据库的映射;
用他有什么好处:面向对象的建模、操作,多态性、继承,容易使用,很好理解;
3、Spring Web;
什么是 Spring web:提供Web应用上下文,对Web开发提供功能上的支持;
4、Spring Web MVC;
什么是 Spring Web MVC:全功能MVC框架,作用相当于struts;
使用Spring web MVC的好处:Spring的controller在它 的IOC容器管理下,可以像普通的bean来管理一样;
5、Sring Dao;
什么是 Spring Dao:提供事务支持,JDBC支持;
6、String Context;
什么是 Sptring Context:扩展核心容器,提供事件处理、国际化,还能提供一些企业级的功能;
7、Spring Core;
什么是 Spring Core:核心容器,BeanFactory提供了组件生命周期的管理,组件的创建,装配,销毁等功能
IOC (控制反转):
IOC在Spring中担任着一个重要的位置:是spring的核心;IoC的一个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象。这一点是通过DI(依赖注入)来实现的;
IOC的好处:1、管理bean的生命周期
2、减少了java代码
3、降低了耦合度
4、并且让对象与对象的关系更好的被管理了;
IoC的缺点:1、生成一个对象的步骤变复杂了
2、对象生成因为是使用反射编程,在效率上有些损耗
依赖注入有三种方式:
工厂注入:工厂注入必须写一个接口类;侵入式非常强,不方便移植;
set方法注入:这种方式也是Spring推荐的方式;无侵入式;
构造方法注入:这种方式Spring同样给予了实现;这种方式不是没有侵入式,只是它将侵入式转移了;
Spring的MVC与struts2的MVC比较:
性能:spring比struts快一点。因为spring mvc是基于方法的设计,而sturts是基于类,所以导致每次发一次请求都会实例一个action,每个action都要重新被注入属性。
机制上:spring mvc的入口是servlet,而struts2是filter,这样就导致了二者的机制不同。
设计思想上:struts更加符合oop(面向对象)的编程思想, spring就比较谨慎,在servlet上扩展。
Spring AOP:
一种编程技术,它允许程序员对横切关注点或横切典型的职责分界线的行为(例如日志和事务管理)进行模块化;
使用AOP的好处:
1、解耦,降低了耦合度;
2、让系统更容易被扩展;
3、有很好的代码重用性;
AOP的核心:
切面:切面,是对交叉业务逻辑的统称。
连接点:指切面可以织入到目标对象的位置方法或者属性;
通知:指切面的具体实现。
切入点:指通知应用到哪些类的哪些方法或属性之上的规则。
AOP使用代理:
(1) 将切面使用动态代理的方式动态插入到目标对象(被代理类),形成一个代理对象;
(2) 目标对象如果没有实现代理接口,那么Spring会采用CGLib来生成代理对象,该代理对象是目标对象的子类;
(3) 目标对象如果是final修饰类,并且也没实现代理接口,就不能运用AOP;
相关推荐
Spring、SpringMVC和Mybatis是Java开发中最常用的三大开源框架,它们的整合使用,通常被称为SSM框架。这个框架组合提供了完整的后端服务解决方案,包括依赖注入(DI)、面向切面编程(AOP)、模型-视图-控制器(MVC...
弃用了struts,用spring mvc框架做了几个项目,感觉都不错,而且使用了注解方式,可以省掉一大堆配置文件。本文主要介绍使用注解方式配置的spring mvc,之前写的spring3.0 mvc和rest小例子没有介绍到数据层的内容,...
java *spring工具类 方便在非spring管理环境中获取beanjava *spring工具类 方便在非spring管理环境中获取beanjava *spring工具类 方便在非spring管理环境中获取beanjava *spring工具类 方便在非spring管理环境中获取...
Spring Integration + Spring WS 整合 在 Java 领域中,Spring Integration 和 Spring WS 是两个常用的框架,它们分别负责集成系统和 Web 服务。今天,我们将探讨如何将这两个框架整合在一起,实现一个完整的 Web ...
包含spring 3.0.5的所有jar文件: org.springframework.aop-3.0.5.RELEASE.jar org.springframework.asm-3.0.5.RELEASE.jar org.springframework.aspects-3.0.5.RELEASE.jar org.springframework.beans-3.0.5.RELEASE...
Spring Batch是一个轻量级的,完全面向Spring的批处理框架,可以应用于企业级大量的数据处理系统。Spring Batch以POJO和大家熟知的Spring框架为基础,使开发者更容易的访问和利用企业级服务。Spring Batch可以提供...
Spring框架是Java应用程序开发中的一个核心组件,它提供了一个丰富的IOC(Inversion of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程)功能,使得开发者能够更方便地管理对象和实现模块化...
在Java开发领域,Spring Boot和Spring Batch的整合是构建高效批处理系统的一种常见方式。Spring Boot以其简洁的配置和快速的启动能力深受开发者喜爱,而Spring Batch作为Spring框架的一部分,专注于批量处理任务,...
在构建分布式系统时,Spring Cloud Gateway 作为微服务架构中的边缘服务或 API 网关,扮演着至关重要的角色。它负责路由请求到相应的微服务,并可以提供过滤器功能,如限流、熔断等。而Spring Security 则是 Java ...
spring3.1官方所有的jar包 org.springframework.aop-3.1.RELEASE.jar org.springframework.asm-3.1.RELEASE.jar org.springframework.aspects-3.1.RELEASE.jar org.springframework.beans-3.1.RELEASE.jar org....
这篇文章将教你快速地上手使用 Spring 框架. 如果你手上有一本《Spring in Action》, 那么你最好从第三部分"Spring 在 Web 层的应用--建立 Web 层"开始看, 否则那将是一场恶梦! 首先, 我需要在你心里建立起 Spring...
spring-framework-3.2.18.RELEASE-Gradle编译无误-可直接导入eclipse查看。已使用Gradle编译成eclipse项目的spring源码,版本是3.2.18。可以直接导入eclipse中,导入法方法可参看:...
Getting started with Spring Framework (4th Edition) is a hands-on guide to begin developing applications using Spring Framework 5. The examples (consisting of 88 sample projects) that accompany this ...
Spring 详细讲解 Spring 是一个功能强大且功能齐全的 Java 应用程序框架,提供了一个通用的基础结构来支持开发企业级应用程序。 Spring 框架的核心是控制反转(IoC)和依赖注入(DI)模式,它们使得应用程序更加...
介绍一个基于Spring Boot 3.0、Spring Cloud 2022 & Alibaba的微服务RBAC权限管理系统。该系统可以实现微服务RBAC权限管理,通过RBAC权限管理机制对用户访问系统的权限进行限制,从而提高系统的安全性和可用性。同时...
项目原型:Struts2.3.16 + Spring4.1.1 + Hibernate4.3.6 二、 项目目的: 整合使用最新版本的三大框架(即Struts2、Spring4和Hibernate4),搭建项目架构原型。 项目架构原型:Struts2.3.16 + Spring4.1.1 + ...
Spring Cloud系列教程 Spring Boot Spring Cloud Stream 和 Kafka案例教程 springcloud生产者与消费者项目实战案例 Spring Cloud 中断路器 Circuit Breaker的应用 配置 Spring Cloud Config Server Spring Cloud ...
Spring Cloud和Spring Boot是两个非常重要的Java开发框架,它们在微服务架构中扮演着核心角色。Spring Boot简化了创建独立的、生产级别的基于Spring的应用程序的过程,而Spring Cloud则为开发者提供了快速构建分布式...
《Spring AI Core 0.8.1:开启人工智能之旅》 在现代软件开发领域,Spring框架以其强大的功能和灵活性,已经成为Java开发中的首选框架之一。而Spring AI Core则是Spring生态系统中专门为人工智能(AI)和机器学习...
《Spring技术内幕:深入解析Spring架构与设计原理(第2版)》从源代码的角度对Spring的内核和各个主要功能模块的架构、设计和实现原理进行了深入剖析。你不仅能从本书中参透Spring框架的出色架构和设计思想,还能从...