Spring框架(一:配置与基础概念)

Spring 是什么?

Spring 是于 2003 年兴起的一个轻量级的, IOC 和 AOP的Java 开发框架,它 是为了简化企业 级应用开发而生的。

Spring 优点

轻量级的

Spring 框架使用的 jar 都比较小,一般在 1M 以下或者几百 kb。Spring 核 心功能的所需的 jar 总共在 3M 左右。 Spring 框架运行占用的资源少,运行 效率高。

非侵入式

编写一些业务类的时候不需要继承 spring 特定的类,通过配置完成依赖注入后 就可以使用,此时,spring 就没有侵入到我业务类的代码里

IOC

即 Inversion of Control,缩写为 IOC,就是由 Spring IoC 容器管理对象,而 非传统实现中由程序代码直接操控.

AOP

通过 Spring 提供的 AOP 功能,方便进行面向切面的编程,许多不容易用传 统 OOP 实现的功能可以通过 AOP 轻松应付在 Spring 中,开发人员可以从 繁杂的事务管理代码中解脱出来,通过声明式方式灵活地进行事务的管理,提高 开发效率和质量.

一站式框架

Spring 本身也提供了数据访问功能和 web 功能,以及可以很好的管理其他框架

Spring 体系结构

Core Container(核心容器):

 Beans: 管理 Beans
 Core: Spring 核心
 Context: 配置文件 
 ExpressionLanguage: SpEL 表达式
 AOP(切面编程)
 AOP 框架: Aspects
 Data Access(数据库整合):
 JDBC, ORM, OXM, JMS, Transaction
 Web(MVC Web 开发):
 Web, Servlet, Portlet, Struts
 Test(Junit 整合)

官网地址:https://spring.io/

Spring Hello World 搭建

Maven 导入 spring 核心基础 jar

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.2.RELEASE</version>
        </dependency>

在resources包里面配置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">
       <!--在里面配置spring框架-->
       <bean id="user" class="com.ff.spring.bean.User"> </bean>
       <!-- 测试用的User类-->
</beans>

然后创建一个User类
在这里插入图片描述
测试 spring
在这里插入图片描述

IOC(控制反转)55

IOC 容器是具有依赖注入功能的容器,负责对象的实例化、对象的初始化,对 象和对象之间依赖关系配置、对象的销毁、对外提供对象的查找等操作,对象 的整个生命周期都是由容器来控制。我们需要使用的对象都由 ioc 容器进行管 理,不需要我们再去手动通过 new 的方式去创建对象,由 ioc 容器直接帮我 们组装好,当我们需要使用的时候直接从 ioc 容器中直接获取就可以了。
正控:若要使用某个对象,需要自己去负责对象的创建
反控:若要使用某个对象,只需要从 Spring 容器中获取需要使用的对象, 不关心对象的创建过程,也就是把创建对象的控制权反转给了 Spring 框架.
在这里插入图片描述
目的:降低耦合度
底层实现方式: 解析 xml/扫描注解标签 + 工厂模式 + 反射机制

Spring Bean管理:基于 xml 配置方式

bean 配置需要 spring 管理的类

  id 生成的对象名
  class 全类名
  name 对象别名,可以为多个
  singleton(默认值):在 Spring 中只存在一个 bean 实例, 单例模式
  prototype:原型 getBean()的时候都会 new Bean()
  request:每次 http 请求都会创建一个 bean, 仅用于 WebApplicationContext 环境
  session:同一个 http session 共享一个 Bean, 不同 Session 使用不同的 Bean, 使用环境同上
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值