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

Spring框架学习day1--基础概念

  • Spring基础部分
    • **轻量级的**
    • IOC:控制反转(对象由自己管理变成交给框架管理)
    • AOP:面向切面编程
    • 一站式
    • Baen
    • Spring体系结构
  • Spring Hello World 搭建

Spring基础部分

Spring是一个轻量级的IOC、AOP的一站式java开发框架,为简化企业级应用开发而生的,

轻量级的

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

IOC:控制反转(对象由自己管理变成交给框架管理)

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

spring的思想是将对象的生成和管理同一交给框架,需要的时候,直接从框架获取即可

Servlet:LoginDao logindao = new LoginDao();

​ IOC容器负责对象的实例化、对象的初始化、对象和对象之间的依赖关系、对象的销毁、对外提供对象的查找工作,对象整个生命周期都交给容器来做。

​ 我们需要的对象都由IOC容器进行管理,不需要我们手动

正控:若要使用某个对象,需要自己去负责对象的创建

反控:若要使用某个对象,只需要从 Spring 容器中获取需要使用的对象, 不关心对象的创建过程,也就是把创建对象的控制权反转给了Spring框架.

image-20250529172143697

AOP:面向切面编程

Aspect Oriented Programming 直译过来就是面向切面编程。AOP 是一种编 程思想,是面向对象编程(OOP)的一种补充。面向对象编程将程序抽象成各 个层次的对象,而面向切面编程是将程序抽象成各个切面.

一站式

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

Baen

由Spring框架创建的对象,称为一个bean对象,和我们自己new的对象不一样

Spring体系结构

image-20250529163936037

Spring Hello World 搭建

1.Maven项目

创建maven项目

image-20250529163504091

2.导入对应jar包

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

3.编写spring配置文件

resources创建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="admin" class="org.example.model.Admin"></bean>
</beans>

4.创建一个类

image-20250529165148642

5.创建一个测试类

package org.example.test;import javafx.application.Application;
import org.example.model.Admin;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class test1 {public static void main(String[] args) {
//        以前在程序哪里需要对象,我们就在哪里new对象
//        Adimin admin = new Adimin();/** 现在使用spring,把创建对象的控制权交给spring框架,这个称为控制反转(IoC)* 我们只需要在spring配置文件中配置好对象,然后通过spring的API来获取对象即可* 这样,程序的耦合度降低,代码更加灵活,更容易维护** ClassPathXmlApplicationContext("spring.xml");spring框架落地实现的功能的具体类,我们可以把它理解为一个容器(生成并管理对象)*                                              也有一些别称 IOC容器 Spring容器* */ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");Admin admin = (Admin)context.getBean("admin"); //获取spring容器中id为admin的bean对象Admin admin1 = context.getBean("admin", Admin.class); //获取spring容器中id为admin的bean对象,并指定类型为AdminSystem.out.println(admin);System.out.println(admin1);}
}

相关文章:

  • HackMyVM-Dejavu
  • uniapp 实现腾讯云 IM 消息已读回执
  • 基于大模型的颈椎病全周期预测与治疗方案研究报告
  • 代码随想录算法训练营第60期第五十一天打卡
  • 代理模式核心概念
  • Python模块中__all__变量失效问题深度解析
  • Java Vritual Machine
  • $3 #12阶段三小结Java se
  • SpringCloud基础知识
  • 逻辑回归详解:从原理到实践
  • 从“刚性扩容”到“弹性供给”:移动充电服务重构配电网边际成本
  • Java求职者面试题详解:计算机网络、操作系统、设计模式与数据结构
  • Java 面试实录:从Spring到微服务的技术探讨
  • 【Redis】大key问题详解
  • WPF的UI交互基石:数据绑定基础
  • 5.LoadBalancer负载均衡服务调用
  • LVS+Keepalived 高可用
  • 如何将 WSL 的 Ubuntu-24.04 迁移到其他电脑
  • Void:免费且隐私友好的 AI 编码利器,挑战 Cursor 地位?
  • 自学嵌入式 day 25 - 系统编程 标准io 缓冲区 文件io
  • php做的网站模板下载地址/百度公司电话是多少
  • 住房和城乡建设部网站规范答疑/宝鸡seo外包公司
  • 做兼职 那个网站靠谱/南宁推广公司
  • 网站维护服务项目/湖南网站建设推荐
  • 烟台制作网站/推广任务发布平台app
  • 手机微网站与微官网/国外网站seo免费