在SpringMVC框架中,控制器(Controller)是负责处理用户请求的组件,它接收用户的输入,调用业务逻辑进行处理,并最终返回结果给用户。控制器是SpringMVC中的核心组件之一,起到连接视图和模型的作用。
在SpringMVC中,控制器可以使用@Controller
注解来标识,并通过方法级别的@RequestMapping
注解来映射请求路径。控制器负责接收请求参数、调用业务逻辑,然后返回视图或数据给用户。
以下是一个简单的SpringMVC控制器的例子:
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.ui.Model;
@Controller
@RequestMapping("/example")
public class MyController {
@RequestMapping(value = "/hello", method = RequestMethod.GET)
public String hello(Model model) {
model.addAttribute("message", "Hello, SpringMVC!");
return "helloPage"; // 视图的逻辑名称
}
}
在这个例子中,MyController
类被标识为一个控制器,通过@RequestMapping("/example")
指定了控制器的根路径。hello
方法处理GET请求,并使用model.addAttribute
向视图传递数据。该方法返回一个字符串 "helloPage"
,这是视图的逻辑名称,SpringMVC将会根据视图解析器找到相应的视图。
控制器的主要作用包括:
- 处理用户请求: 通过
@RequestMapping
等注解定义处理请求的方法。 - 调用业务逻辑: 控制器负责调用服务层(Service)或其他业务逻辑组件来处理业务。
- 传递数据到视图: 使用
Model
对象传递数据到视图,以便渲染页面。 - 选择视图: 返回视图的逻辑名称,由视图解析器解析为具体的视图。
SpringMVC的控制器层与视图层和模型层解耦,实现了松耦合的架构,使得系统更易于维护和扩展。
Was this helpful?
0 / 0