Spring框架的基本原理

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

一:spring基本概念

1)struts2是web框架,hibernate是orm框架

2)spring是容器框架,创建bean,维护bean之间的关系

3)spring可以管理web层,持久层,业务层,dao层,spring可以配置各个层的组件,并且维护各个层的关系


二:spring核心原理

1.IOC控制反转

概念:控制权由对象本身转向容器,由容器根据配置文件创建对象实例并实现各个对象的依赖关系。

核心:bean工厂


2.AOP面向切面编程

a.静态代理

根据每个具体类分别编写代理类

根据一个接口编写一个代理类

b.动态代理

针对一个方面编写一个InvocationHandler,然后借用JDK反射包中的Proxy类为各种接口动态生成相应的代理类

三:简单的Spring入门案例

1.编写一个类:UserService

<span style="font-size:18px;">package com.cloud.service;
public class UserService {
	private String name;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public void sayHello(){
		System.out.println("hello:"+name);
	}
}</span>

2.编写核心配置文件:applicationContext.xml

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
		http://www.springframework.org/schema/beans/spring-beans-3.2.xsd 
		http://www.springframework.org/schema/mvc 
		http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd 
		http://www.springframework.org/schema/context 
		http://www.springframework.org/schema/context/spring-context-3.2.xsd 
		http://www.springframework.org/schema/aop 
		http://www.springframework.org/schema/aop/spring-aop-3.2.xsd 
		http://www.springframework.org/schema/tx 
		http://www.springframework.org/schema/tx/spring-tx-3.2.xsd ">
	<!-- 在容器中配置bean对象 -->
	<!-- 下面这句等价于:UserService userService = new UserService() -->
	<bean id="userService" class="com.cloud.service.UserService">
		<!-- 等价于:userService.setName("SpringName"); -->
		<property name="name">
			<value>SpringName</value>
		</property>
	</bean>
</beans>

3.编写测试类:Test

<span style="font-size:18px;">package com.cloud.test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.cloud.service.UserService;
public class Test {
	public static void main(String[] args) {
		ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
		UserService userService = (UserService) ac.getBean("userService");
		userService.sayHello();
	}
}</span>

四:spring原理总结

1.使用spring ,没有new对象,我们把创建对象的任务交给spring框架
2.spring
实际上是一个容器框架,可以配置各种bean(action/service/domain/dao),并且可以维护beanbean的关系,当我们需要使用某个bean的时候,我们可以getBean(id),使用即可.

Spring——AOP原理流程详解 基于5.3.9 版本的Spring源码,对AOP原理流程详解,AOP是在Bean生成流程中什么位置介入处理的?各个通知方法又是怎么组装的?AOP真的只是动态代理这么简单吗? 阅读详情

相关推荐

深度解析Spring框架原理

它是一个全面的、企业应用开发一站式的解决方案,贯穿表现层、业务层、持久层。但是 Spring仍然可以和其他的框架无缝整合。

Reische的博客 4162

Spring-全面详解(基础知识)

Spring-全面详解(基础知识)入门级 持续更新中 Spring5框架 内容介绍: 1.Spring概念 2.IOC容器 3.Aop 4.JDBCTEmplate 5.事物管理 6.Spring5新特性

m0_63324772的博客 2万+

Java Spring框架 (底层原理+入门)

定义:Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。...

m0_67393413的博客 2189

一、Spring 框架基础原理

注解方式依赖于@ComponentScan注解,该注解上配置了包扫描路径,启动过程中,后置处理器ConfigurationClassPostProcessor调用了处理方法,创建ClassPathBeanDefinitionScanner,调用doScan方法,这里是@ComponentScan的实质性逻辑,从配置的包路径下获取所有的类,遍历出符合过滤条件的类,默认是带有@Component注解的,然后注册到beanDefinitionMap中。注解,有说明是切面,进行解析,将其转化成。

qq_28650671的博客 1462

Spring框架基本原理分析

引言 工作有一段时间了,工作中基本每个项目都用到了Spring框架,说实话,很多人应该和我一样,只是“使用”了这个框架,对于框架基本原理应该没怎么研究过。前段时间,和同事交流时,提到了Spring核心组件:IOC(控制反转)、AOP(面向切面编程)。交流的时候,只能大概说说,并不能完整讲出来。回来后,找相关文章和源码研究了下,特此记录。 Spring框架概念 Spring是一个开源的容...

kingyxfly的博客 2万+

Spring框架Spring Core、Spring AOP、Spring MVC、Spring Boot、Spring Cloud等组件的基本原理及使用

Spring框架是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,它提供了全面的基础设施建设,以支持开发Java应用程序。Spring框架的组件众多,每个组件都有其独特的基本原理和使用方式。

牛马日常踩坑记录 1750

初识Spring框架,IoC容器基本原理及定义

初识Spring框架,IoC容器基本原理及定义Spring 简介: 轻量级框架,javaEE的春天,当前主流框架 “一站式”的企业应用开发框架 Spring内容: IoC容器 AOP实现 数据访问支持 简化JDBC/ORM框架 声明式事务 Web集成Spring设计理念 Spring是面向Bean的编程 Spring两大核心技术 控制反转(IoC:Invers

sxpmax的博客 362

Spring框架基本原理

spring基本概念 1)struts2是web框架,hibernate是orm框架 2)spring是容器框架,创建bean,维护bean之间的关系 3)spring可以管理web层,持久层,业务层,dao层,spring可以配置各个层的组件,并且维护各个层的关系 spring核心原理 1.IOC控制反转 概念:控制权由对象本身转向容器,由容器根据配置文件创建对象实例并实现各个对象的...

qq_41172982的博客 1874

spring - spring框架基本原理

原文链接:https://blog.csdn.net/kingyxfly/article/details/79826333 小汽车类Car package com.example; public class Car { private String name; private double price; // 省略getter,setter @Override public String toString() { return "Ca

qq_40580037的博客 271

Spring框架SpringMVC基本原理与配置

SpringMVC 是基于 Servlet 的 MVC 框架,其核心是通过前端控制器 DispatcherServlet 协调各个组件完成请求处理与响应。实际上 Spring MVC 本质就是一个servlet,是对原生的servlet进行了封装,在以前浏览器的每一次请求都需要写一个对应的servlet,现在只需要将浏览器的请求和响应交给DispatcheServlet进行统一的处理。

2501_91676654的博客 980

spring框架基本原理和环境的搭建

spring框架 1 什么是spring框架 1.1 概念:spring框架是一个轻量级的开源框架,以Ioc和Aop为内核,提供了展现层和持久层及事物管理等的企业及应用。 1.2 spring 框架的主要发明人:Rod Johson 1.3 spring框架的宗旨:spring框架并不是发明新的技术,而是让原有的技术使用起来更加的方便。 1.4 例如 我们的mybatis 框架是在 数据访问层的,...

weixin_44575563的博客 350

Spring MVC框架基本原理

图解: 流程 用户发送url请求带前端控制器,前端控制器接收用户请求 前端控制器请求查找handler,处理器映射器将根据XML配置或者注解配置查找到对应的处理器handler 处理器映射器返回处理器执行链(HandlerExecutionChain,内部包含相关拦截器和处理器)给前端控制器 前端控制器请求执行对应的handler 处理器适配器执行相关的handler 处理器...

ys.hubery 849

Spring JdbcTemplate框架(一)——基本原理

JDBC已经能够满足大部分用户擦欧洲哦数据库的需求,但是在使用JDBC时,应用必须自己来管理数据库资源。spring对数据库操作需求提供了很好的支持,并在原始JDBC基础上,构建了一个抽象层,提供了许多使用JDBC的模板和驱动模块,为Spring应用操作关系数据库提供了更大的便利。 Spring封装好的模板,封装了数据库存取的基本过程,方便用户。   一、模板方法

信息技术提高班第九期 8043

[网络安全] Spring Security 安全框架基本原理及使用

Spring Security 是一个基于 Spring 框架的安全性框架,它提供了许多针对身份验证(Authentication)和访问控制(Authorization)方面的功能,帮助开发人员保护和管理应用程序的安全性。综上所述,Spring Security 是一款强大、功能丰富的安全管理框架,为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重复代码的工作。

Hacker_xingchen的博客 900

Spring框架中AOP设计基本原理

一.前言 Spring 提供了AOP(Aspect Oriented Programming) 的支持, 那么,什么是AOP呢?本文将通过一个另外一个角度来诠释AOP的概念,帮助你更好地理解和使用Spring AOP。 读完本文,你将了解到: 1.    Java程序运行在JVM中的特征 2.    Java程序的执行流【了解AOP、连接点(Join Point)、

东天里的冬天 1228

spring框架 c p标签的区别_SSM框架基本原理与优势

原理:1.Spring在java里面,要用类里面的方法,就需要先有类的对象,而类的对象就是new出来Spring就是用来简化这一步操作的框架Spring是一个容器,里面装了很多Bean即实体对象。之后要用到这些对象对应的类的方法,可以直接从容器里面拿,就不用再去new一个了2.SpringMVC首先理解好servlet是什么?Java Servlet 是运行在 Web 服务器或应用服务器上的程序,...

weixin_39849930的博客 332

spring框架介绍及搭建

介绍 Spring是一个开源框架,它由Rod Johnson创建。它是为了使企业应用开发更简单。Spring使用基本的JavaBean替代以前只可能由EJB完成的事情。 spring主要起到解耦合的作用 spring主要学习AOP和IOC概念 IOC :inverse of control 控制反转或者依赖注入 控制反转:从主动实例化对象,转换到被动获取对象 依赖注入:需要什么对象,容器就注入什么对象 ioc主要是用来实现对象装配的,比如controller调用service,controller

小乌龟 2141
上一篇: HTML5:音频控制
下一篇: Errors occurred during the build.
午-夜
博客等级 码龄12年 95粉丝 133原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值