Spring框架(一)Spring的概念

第一章、简介

https://ke.qq.com/course/358820?taid=2935962334493092、https://spring.io/

        本文介绍Spring框架的相关概念:

  1. Spring框架是 一个开源的框架——免费、提供源码的框架。
  2. Spring框架使用 基本的JavaBean代替EJB——因为2003年早期的EJB框架是重量级的框架,需要很多其他的东西才能用,难以推广,因此Spring框架取代了EJB。
  3. Spring版本——现在常用的是Spring4.X版本。Spring2.X基本不用,Spring3.X一些老项目在用。
  4. Spring框架的两个核心——控制反转(Inversion of Control, IoC)和面向切面(Aspect Oriented Programming, AOP)。、
  5. Spring框架是 一站式框架

    下面的章节目录,将介绍Spring框架的两个核心、一站式框架。

第二章、Spring两个核心

2.1、 AOP

        AOP的基本思想是,扩展功能的实现不是通过修改源代码来实现的,而是通过

2.2、 IoC

        以前我们调用一个非静态类时,是通过new出一个对象方式,然后才能调用该对象。但是new的方式存在一些缺点,表现为类与类之间的耦合度太高。

        为什么耦合度太高呢?举个例子,现在我们有一个UserA.java和UserB.java,然后UserB.java调用UserA.java的方法MethodA(),必须new一个userA对象。但是new的方法创建对象,存在一些缺点:一旦UserA类的名字或类的方法名字MethodA发生变化,那么就必须修改UserB类里面的代码,耦合性太高了

public void UserA{
    public void MethodA(){
        *******
    }
}

public void UserB{
    UserA userA = new UserA();
    userA.MethodA();
}

       为了解决这些缺点,AOP的基本思想是,创建对象的方式,不是new出来一个对象,而是通过spring配置或注释的形式创建类的对象

       IoC通过两种方式来创建new对象:

  1. IoC的配置文件形式来实现创建一个new对象。
  2. IoC的注解文件形式来实现创建一个new对象。

2.2.1、配置文件形式(XML)

2.2.1.1、配置文件形式的核心技术
  • XML配置文件
  • dom4j解析XML文件
  • 工厂设计模式
  • 发射
2.2.1.2、配置文件形式的基本原理

        IoC的配置文件形式实现创建一个对象的基本原理是:

  1. 步骤一、首先创建XML配置文件,并且配置需要创建的对象类。
  2. 步骤二、创建工厂类,使用dom4j解析配置文件+反射。
步骤一的代码
<bean id="userA" class="cn.itcast.UserA"/> //class=""表示UserA类所在的路径

步骤二的代码
public Static Void UserFactory{
    //在工厂类中,返回UserA对象的方法
    public static UserA getUserA(){
        //1、使用dom4j解析XML文件,根据id值userA,得到id值对应的class属性值
        String calssValue="采用dom4j配置文件获取class的属性值";
        //2、使用反射创建类的对象,calssValue代表了指定的UserA类了。
        Class var = Class.forName(calssValue);
        UserA userA = var.newInstance();
        return userA;    
    }
}

        现在,我们还是假设UserB.java调用UserA.java的方法MethodA(),并且引入工厂类UserFactory。

public void UserA{
    public void MethodA(){
        *******
    }
}

public void UserB{
    UserFactory.getUserA();
}
2.2.1.3、配置文件形式的入门案列

        在Dome之前,必须注意一些问题或步骤:

  • 会用IDEA创建一个Dynamic web工程
  • 会导入Spring的相关jar包,比如Beans包。——Spirng的很多jar包与Spirng.Framework架构,是一一对应的。
  • 会创建XML文件及其约束,但要注意XML约速越多,效率越慢,用到几个约束就用几个,把多余的约束去掉。
  • 会进行IoC的beans管理及其三种实例化的实现方式——第一种、使用类的无参数构造创建(重点、常用,如下图所示)、第二种、使用静态工厂创建、第三种、使用实例化工厂创建,参考 http://www.shareblogs.top/980/
  • 会进行单元测试——@Test
  •  
第一种、 使用类的无参数构造创建
往后填上,先省略。

2.2.2、注解文件形式

第三章、一站式框架

      为什么说spring是一站式框架?因为spring在JavaEE三层结构中,为每一层提供了不同的解决技术:

  • web层——提供了Spring MVC解决技术。
  • Service层——提供了Spring IoC解决技术。
  • Dao层(data access object,数据访问层)——提供了Spring JdbcTemplate解决技术。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我爱AI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值