文章目录
Spring IOC、DI注解
1.什么是 IOC、DI
IOC:
在Spring框架中,IOC(Inversion of Control,控制反转)是一种设计思想,它通过反转应用程序的控制权,实现了对象之间的松耦合。简单来说,IOC是由容器负责创建和管理对象的生命周期,而不是由程序员手动去创建和管理。
在传统的程序设计中,对象的创建和依赖关系是由程序员在代码中直接控制的。而在IOC容器中,对象的创建和依赖关系由容器负责。这意味着,当需要某个对象时,不再由程序员主动去创建,而是由IOC容器主动将对象注入到需要的地方。
Spring框架中的IOC容器负责管理Java对象,它实现了控制反转的概念。IOC容器主要有两种实现方式:
BeanFactory: 这是Spring的基础IOC容器,它提供了一种简单的IOC容器实现。它在第一次请求获取Bean时进行实例化。
ApplicationContext: 这是BeanFactory的扩展,它提供了更多的功能,包括AOP(面向切面编程)、事件传播、资源加载等。ApplicationContext在容器启动时预先实例化所有的Bean。
通过IOC,Spring框架降低了组件之间的耦合度,使得代码更容易理解、扩展和维护。开发者只需要关注业务逻辑,而不用过多关心对象的创建和依赖关系。 IOC容器通过配置文件或注解来描述Bean的创建和依赖关系,使得整个应用的组件能够更加灵活和易于管理。
省流版:原来要由程序员先声明对象,再调用,由程序员负责管理对象。现在Spring框架来接管这一操作,让程序员能够直接调用对象。
DI:
前面提到了IOC是一种设计思想,而DI是一种具体的实现手段、方式。在DI中,依赖关系由IOC容器在运行时动态注入到需要的组件中,而不是由组件自己去创建或查找依赖。DI通过将依赖关系从组件内部移到外部,实现了更松散耦合的设计。
这里就用到了反射的技术,框架通过反射的手段剖析了自定义类,将类的方法和属性都提取出来,供程序员更加方便的调用和管理对象。
2.RuoYI后台管理系统中的一个例子
前情提要
注解 在spring框架中运用广泛,下文提到的 @Component 能够实现将类注册Bean到框架中,@Autowired能够实现“自动装配”的效果,实现对Bean的调用
Spring MVC注解
1.什么是 MVC
MVC(Model-View-Controller)是一种软件设计模式,用于将应用程序分为三个主要的组件,以便更好地组织和管理代码。这三个组件分别是:
1.Model(模型): 负责管理应用程序的数据和业务逻辑。模型表示应用程序的状态,当状态发生变化时,模型负责通知视图和控制器。
2.View(视图): 负责呈现模型的数据给用户,展示用户界面。视图接收模型的信息并将其呈现出来,通常以用户能够理解的形式(例如图形界面、网页等)展示。
3.Controller(控制器): 负责接收用户输入并作出相应的响应,处理用户与应用程序之间的交互。控制器更新模型的状态,并通知视图以更新用户界面。
2.常见的Spring MVC的注解
1.Spring MVC 常用注解
•@Controller/@RequestMapping/@RequestBody/@ResponseBody
•@RestController/@GetMapping/@PostMapping/@PutMapping/@DeleteMapping
•@Service
2.注册Controller[也是一种Bean]
•@Controller [每次前端请求返回的一个页面]
•@RequestBody[请求体为json]
•@ResponseBody[返回值为json]
•@RestController [每次前端请求返回的一个json,
等效于@Controller+@ResponseBody]
3.注册HTTP Method 处理函数
•@GetMapping
•@PostMapping
•@PutMapping
•@DeleteMapping
4.注册Service[也是一种Bean]
•@Service
3.RuoYI后台管理系统中的一个例子
整个程序运行起来,访问http://localhost:80/system/student/list 即可调用该函数
使用apifox测试一下
也许是反向代理的原因,实际应该访问
http://localhost/dev-api/system/student/list才能够通过get请求得到数据