发表于: 2025-03-17 21:08:21
0 20
今天的目标:学习spring,看了好久教学视频
视频要求:学习spring6,需要Java17版本,上午在卸载我安装的Java8,然后中午时跟师兄说卸载了Java8,但师兄说公司使用的是Java8,后面又是重新删除Java17,重新安装Java8.
视频教学使用的是mvc三层架构模式
结构如下:
视频中讲解了简单的案例,但是各个结构与各个的接口,调用完全不理解。。。。。
先来写一写spring的核心概念。
1. IoC(控制反转)
1、什么是 IoC?
- IoC(Inversion of Control)是一种设计原则,它将对象的创建和依赖关系的管理从应用程序代码中抽离出来,交给容器(如 Spring)来负责。
- 传统方式:开发者手动创建对象并管理依赖关系。
- IoC 方式:Spring 容器负责创建对象并注入依赖。
2、IoC 的实现方式
- 依赖查找(Dependency Lookup):容器提供 API,开发者主动查找依赖对象(较少使用)。
- 依赖注入(Dependency Injection, DI):容器自动将依赖对象注入到目标对象中(Spring 主要使用这种方式)。
依赖注入的三种方式
- 构造器注入:通过构造函数传递依赖。java
public class UserService { private UserRepository userRepository; public UserService(UserRepository userRepository) { this.userRepository = userRepository; }}
- Setter 注入:通过 Setter 方法传递依赖。java
public class UserService { private UserRepository userRepository; public void setUserRepository(UserRepository userRepository) { this.userRepository = userRepository; }}
- 字段注入:通过注解直接注入字段(不推荐,因为不利于测试)。java
public class UserService { @Autowired private UserRepository userRepository;}
3、IoC 的好处
- 降低代码耦合度,提高可维护性。
- 便于单元测试,可以轻松替换依赖对象。
4. Bean
什么是 Bean?
- Bean 是 Spring 容器管理的对象,由 Spring 负责创建、初始化和销毁。
- Bean 可以是任何 Java 对象,通常是一个服务类、DAO 类或控制器类。
loc和bean只简单的学习了一个概念。
明天再去看看吧!
明天的任务:继续学习spring
评论