SpringBoot配置Controller实现Web请求处理的方法
Controller处理请求
由于 在建立 SpringBoot项目时选择的 Web > Spring Web
, Maven会导入 SpringMVC 框架 依赖, 做为 Web处理框架
在 SpringMVC框架中 , 通过 Controller类中的方法 来处理请求, 产生响应
在方法中 要解决以下问题
-
标识方法
-
转页
-
接收请求时传递信息
-
封装响应信息
-
业务处理
创建Controller 类
在 项目中 建立 controller 包 ( 文件夹 ), 在controller包 ( 文件夹 ) 下创建 XxxController类 , 作为处理Web请求的控制层
在 创建类的同时, 可以创建所属的包路径(文件夹)
@Controller注解
Controller 类 就是一个普通的类
@Controller
: 在类上添加 @Controller 注解, 有两个作用
-
将当前类注册到 SpringIoC 容器中
-
当前类 为MVC 结构中的 Controller 控制层
package com.yuan.controller;import org.springframework.stereotype.Controller;@Controllerpublic class TestController {}
标识方法@RequestMapping
@RequestMapping
: 用于标识请求方法的,
可以同时写在类上和方法上 或者 只写在方法上
要保证 注解value属性值的唯一性, 这样在请求时才能定位到指定的方法上
import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;@Controller@RequestMapping("/test")public class TestController { @RequestMapping("/test01") public void test01(){ System.out.println(" controller 中的测试方法 test 01 "); }}
或者
import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;@Controllerpublic class TestController { @RequestMapping("/test/test01") public void test01(){ System.out.println(" controller 中的测试方法 test 01 "); }}
测试
启动项目测试, 在浏览器中输入URL : http://localhost:8080/test/test01
这时页面报错, 是因为没有转页的对应页面, 后面解决
但在 idea 控制台 可以找到controller中的测试方法test 01信息输出, 说明 方法被调用执行了