当前位置: 首页 > news >正文

搭建第一个Spring项目

思想:IOC

控制反转是一种通过描述(XML或注解)并通过第三方生产或获取特定对象的方式。在spring中实现控制反转的是IOC容器,其实现方式是依赖注入DI(depengency Injection)

步骤:搭建环境-->导入依赖-->写实体类-->组装Bean-->获取Bean-->测试

创建一个新的maven项目,导入依赖

<dependencies>
    <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>7.0.0-M2</version>
    </dependency>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13.2</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>javax.annotation</groupId>
        <artifactId>javax.annotation-api</artifactId>
        <version>1.2</version>
    </dependency>
</dependencies>

实体类

package com.lyc.Pojo;

public class Hello {
    private String name;
    public String getName(){
        return name;
    }
    public void setName(String name){
        this.name = name;
    }
    public void sayHello(){
        System.out.println("Hello "+name);
    }
}

创建bean.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
		https://www.springframework.org/schema/beans/spring-beans.xsd">
<!--使用spring来创造对象,在spring中,这些都被称为bean-->
<!--
id = 变量名
class = new 的对象
property 相当于给对象中的属性设置一个值
-->
<bean id="hello" class="com.lyc.Pojo.Hello">
    <property name="name" value="Spring"></property>
</bean>
</beans>

创建测试类

public class MyTeat {
    public static void main(String[] args) {
        //获取Spring的上下文对象
            ApplicationContext  context = new ClassPathXmlApplicationContext("bean.xml");
        //我们的对象是在spring中管理的,所以从Spring中获取
        Hello hello =  context.getBean("hello", Hello.class);
        System.out.println(hello.getName());
    }
}

测试结果

项目层次应为

小结 

Spring项目实质就是将对象的创建权交给Spring,这个过程叫做控制反转

控制:谁来控制对象的创建,传统应用程序的对象是由程序本身控制创建的,使用spring后,对象是由Spring来创建的

反转:程序本身不创建对象,而是变成被动的接收对象

IOC是一种编程思想,由主动的编程变为被动地接收

相关文章:

  • 题解:AT_abc170_f [ABC170F] Pond Skater
  • Linux中执行 ifconfig 命令时提示 “未找到命令”
  • 无人设备遥控器之调度自动化技术篇
  • MCP(大模型上下文协议)
  • C++ 的基本内置类型(十二)
  • springboot body 转对象强验证属性多余属性抛错误
  • [NO-WX179]基于springboot+微信小程序的在线选课系统
  • msvcp140.dll是什么文件?修复丢失msvcp140.dll的方法指南
  • Python FastAPI 面试题及参考答案
  • [CLS] Token 在 ViT(Vision Transformer)中的作用与实现
  • 模拟算法专题
  • 机器学习实战,涉及数据预处理、监督算法、无监督算法、模型评估与改进-思维导图
  • 【2025年第三期】全国数字人才技能提升师资培训班邀请函
  • LangChain其它五类组件详解(6)—— 查询分析(Query analysis)
  • uni-app常用模板
  • Redis(Remote Dictionary Server)
  • C#更新Nginx SSL证书
  • nestjs 多环境配置
  • git 操作:撤销Merge
  • NOIP 2024 解题分析
  • 香港新股市场繁荣:恒瑞医药等4公司同时招股,宁德时代今日港交所上市
  • 贵州茅台股东大会回应八大热点:确保茅台酒价格体系稳固,相信自我调节能力
  • 中方是否计划解除或调整稀土出口管制?外交部回应
  • “16+8”“生酮饮食”,网红减肥法究竟靠谱吗?
  • 2000多年前的“新衣”长这样!马王堆文物研究新成果上新
  • 一船明月过沧州:为何这座城敢称“文武双全”?