Spring 框架

概述

Spring 是轻量级的开源的 Java 框架,目的是解决企业应用开发的复杂性。核心是控制反转(IOC)和面向切面(AOP),针对于开发的WEB层(springMvc)、业务层(Ioc)、持久层(jdbcTemplate)等都提供了多种配置解决方案;

特点

轻量级:Spring 是轻量的,基本的版本大约 2MB。
控制反转(IOC):Spring 通过控制反转实现了松散耦合,对象们给出它们的依赖,而不是创建或查找依赖的对象们。
面向切面(AOP):Spring 支持面向切面的编程,并且把应用业务逻辑和系统服务分开。
容器:Spring 包含并管理应用中对象的生命周期和配置。在这个意义上它是一种容器
框架集合:Spring 的 WEB 框架是个精心设计的框架,是 Web 框架的一个很好的替代品。
事务管理:Spring 提供一个持续的事务管理接口,可以扩展到上至本地事务下至全局事务(JTA)。
异常处理:Spring 提供方便的API把具体技术相关的异常(比如由JDBC,Hibernate or JDO 抛出的)转化为一致的 unchecked 异常。

优点

(1)方便解耦,简化开发
(2)Aop 编程支持,从而提供更好的复用。
(3)方便程序测试
(4)方便和其他框架进行整合
(5)方便进行事务操作
(6)降低 API 开发难度
(7)spring属于低侵入设计,代码污染度极低

主要结构

在这里插入图片描述

简单的入门案例

1.打开 idea 工具,配置环境
在这里插入图片描述

2.创建普通类,在这个类创建普通方法

package spring;
public class User {
    public void add() {
        System.out.println("Hello......");
    }
}

3.创建 Spring 配置文件,在配置文件配置创建的对象
(1)Spring 配置文件使用 xml 格式
在这里插入图片描述
(2)创建对象

<?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">
    <!--配置 User 对象创建-->
    <bean id="user" class="spring.User"></bean>
</beans>

其中
id表示给类创建对象所起的名字
class表示你所创建类的全路径。此时我创建的User类全路径为spring.User

4.进行测试代码编写

public class TestSpring {
    @Test
    public void testAdd() {
        //1 加载 spring 配置文件
        ApplicationContext context =
                new ClassPathXmlApplicationContext("bean1.xml");
        //2 获取配置创建的对象
        User user = context.getBean("user", User.class);
        System.out.println(user);
        user.add();
    }

}

结果为:
在这里插入图片描述
我们学习Spring框架主要从以下几个方面入手
1、IOC 容器
(1)IOC 底层原理
(2)IOC 接口(BeanFactory)
(3)IOC 操作 Bean 管理(基于 xml)
(4)IOC 操作 Bean 管理(基于注解)
2、Aop
3、JdbcTemplate
4、事务管理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

~四时春~

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

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

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

打赏作者

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

抵扣说明:

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

余额充值