• Spring5 之框架概述


    Spring5 框架概述

    1、解释

    Spring是轻量级的开源的JavaEE框架
    Spring可以解决企业应用开发的复杂性

    2、两个核心部分

    (1)IOC:控制反转,把创建对象过程交给Spring管理
    (2)AOP:面向切面,不修改源代码进行功能增强

    3、Spring特点

    (1)方便解耦,简化开发
    (2)AOP编程支持
    (3)方便程序测试
    (4)方便和其他框架进行整合
    (5)方便进行事务操作
    (6)降低API开发难度

    4、基础结构图

    在这里插入图片描述

    5、简单入门案例

    5.1 创建普通类,在这个类创建普通方法(User类)

    package com.example.spring5.domain;
    
    public class User {
        public void add(){
            System.out.println("add.....");
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    5.2 创建Spring配置文件,在配置文件配置创建的对象

    5.2.1 Spring配置文件使用xml格式

    
    <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">
    
           
           <bean id="user" class="com.example.spring5.domain.User">bean>
    beans>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    5.3 进行测试代码编写

    package com.example.spring5;
    
    import com.example.spring5.domain.User;
    import org.junit.jupiter.api.Test;
    import org.junit.runner.RunWith;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    import org.springframework.test.context.ContextConfiguration;
    import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
    
    @RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration("classpath:bean1.xml")
    class Spring5ApplicationTests {
    
        @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();
    
        }
    
    }
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
  • 相关阅读:
    C++ STL详解(五) -------- priority_queue
    01背包、完全背包、多重背包、分组背包总结
    OpenMesh 网格简化之顶点聚类
    百度智能云专有云多云管理平台解决方案荣获《可信云多云管理平台解决方案》权威认证
    LeetCode刷题总结---二分查找详解
    【iptables 实战】01 iptables概念
    Spring——简介和IOC底层原理
    LED——S5PV210的LED的理论与操作
    Leetcode 刷题日记 剑指 Offer II 055. 二叉搜索树迭代器
    矩阵论习题1.1
  • 原文地址:https://blog.csdn.net/qq_46106857/article/details/126096646