Spring框架 一个叫春(天)的故事

Spring 定义

        Spring 框架是一个集众多设计模式(工厂设计模式、代理设计模式、策略设计模式、单例设计模式...)于一身的`开源的`、`轻量级的`项目管理框架。致力于JAVAEE轻量级解决方案。

轻量级解决方案:提供一个简单的、同意的、高效的方式构造整个应用,并且可以给将单层框架以最佳的组合柔和在一起建立一个连贯的体系。

特点:Spring 框架的本质不在是替换项目中某个技术,二十将项目中使用单层框架进行 整合管理柔和

Spring 框架核心作用

项目管理框架:就是用来对现有项目中组件进行管理(创建、使用、销毁)。用来负责项目中组件对象的 创建、使用、销毁

import com.example.grocerystore.entity.UserService;
import org.springframework.beans.factory.annotation.Autowired;

public class Test {


    UserService userService1 = new UserService();

    @Autowired
    UserService userService2;

    /**
     * userService1 通过 new 构造方法创建对象
     * userService2 通过 Spring 标签获取对象
     * 
     * 常见的组件管理有:Controller、Service、Dao
     * 通常 entity 组件不交给 Spring 进行管理
     */

}

Spring 框架搭建

1、引入 Spring核心及相关依赖

  • spring-core
  • spring-beans
  • spring-web
  • spring-context
  • spring-context-support
  • spring-jdbc
  • spring-aop
  • spring-aspects
  • spring-expression
  • ...

2、引入 Spring 框架配置文件

        配置文件:文件名称随便,位置随便(本项目中 resources 目录里面)

        统一会把配置文件放在 resources 目录下,名称为 application.xml 或 spring.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

</beans>

3、通过 Spring 管理组件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">


    <!--
        通过 spring 管理组件
        bean:用来管理组件对象的创建
        id:用来指定 spring 框架创建的当前组件对象在 spring(容器|工厂)中唯一标识(全局唯一)
        class:指定管理组件对象的全限定名称(包.类)
    -->
    <bean id="UserService" class="com.grocery.service.UserService"></bean>

</beans>

4、启动容器

import com.grocery.service.UserService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test {

    public static void main(String[] args) {

        // 启动容器
        ApplicationContext context = new ClassPathXmlApplicationContext("application.xml");

        // 获取容器中对象
        UserService userService = (UserService) context.getBean("UserService");
        System.out.println(userService);
    }
}

Spring 框架中核心思想

       IOC:控制反转(Inversion of Controll)

       DI:依赖注入(Denpendcy Injection)

       AOP:切面编程

Spring 工厂特性

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
自己实现一个Spring框架需要以下步骤: 1. 创建IoC容器:首先需要创建一个IoC容器,用于管理和装配各个对象。可以使用一个HashMap来存储对象和对应的名称。 2. 实现依赖注入:依赖注入是Spring框架的核心功能之一。可以使用反射机制,在对象创建时自动注入依赖的对象。通过遍历容器中的对象,查找它们的字段或者方法上的注解,然后通过反射将对应的依赖对象注入进去。 3. 实现bean的生命周期管理:Spring框架可以管理bean的生命周期,可以在bean实例化之前、之后和销毁之前进行一些操作。可以使用接口实现这些功能,例如InitializingBean和DisposableBean。在bean创建完成之后,通过调用对应的方法来执行这些操作。 4. 实现AOP功能:AOP(面向切面编程)是Spring框架的另一个核心功能。可以使用动态代理机制,通过在方法前后插入切面逻辑来实现。可以使用注解或者XML配置来定义切面和切入点。 5. 实现事件发布和监听:Spring框架提供了事件发布和监听的功能。可以通过定义事件类、监听器和监听器注册来实现。在关键的地方发布事件,然后监听器会接收到事件并执行相应的逻辑。 6. 实现事务管理:Spring框架还提供了事务管理的功能。可以使用注解或者XML配置来定义事务的边界和传播行为。可以在方法执行前开启事务,在方法执行后提交或回滚事务。 通过以上步骤,我们可以实现一个简单的Spring框架。这个框架可以完成依赖注入、AOP、事件发布和监听、事务管理等功能。当然,真正的Spring框架还有更多复杂的功能和设计,以上只是一个基本的实现思路。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值