东兴网站建设,做网站项目前怎么收集需求,珠海关键词优化平台,大连市建设工程有限公司Controller 是SpringMVC注解#xff0c;标记一个类作为Web控制器#xff08;Controller#xff09;#xff0c;负责处理HTTP请求并返回响应结果 在SpringMVC中#xff0c;控制器类的主要职责是#xff1a; 1、接收来自客户端的HTTP请求 2、调用服务层或其他业务逻辑组件… Controller 是SpringMVC注解标记一个类作为Web控制器Controller负责处理HTTP请求并返回响应结果 在SpringMVC中控制器类的主要职责是 1、接收来自客户端的HTTP请求 2、调用服务层或其他业务逻辑组件 3、根据操作结果准备视图模型数据Model将控制权转移给视图解析器View Resolver来渲染视图 4、操作结果直接返回HTTP响应例如JSON、XML等。
使用样例 简单页面渲染
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;Controller
public class SimplePageController {GetMapping(/hello)public String displayHelloPage() {// ...return hello; // 假设有一个名为hello.html的模板文件在视图解析器配置的路径下}
}结合ModelAndView对象使用
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;Controller
public class UserViewController {GetMapping(/users/{id})public ModelAndView showUser(PathVariable Long id, Model model) {// 假设userService.find(id)获取用户信息User user userService.find(id);// 将用户信息添加到模型中供视图模板使用model.addAttribute(user, user);// 返回包含视图名称和模型数据的ModelAndView对象return new ModelAndView(user-profile, model.asMap());}
}处理POST请求并返回重定向
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;Controller
RequestMapping(/login)
public class LoginController {GetMappingpublic String showLoginForm() {// 显示登录表单页面return login;}PostMappingpublic String processLogin(RequestParam(username) String username,RequestParam(password) String password,RedirectAttributes redirectAttrs) {// 假设userService.authenticate(username, password)进行身份验证if (userService.authenticate(username, password)) {// 登录成功重定向到主页redirectAttrs.addFlashAttribute(successMessage, Welcome, you have successfully logged in!);return redirect:/home;} else {// 登录失败将错误信息添加到模型中以便在重定向后的页面显示redirectAttrs.addFlashAttribute(errorMessage, Invalid credentials. Please try again.);return redirect:/login;}}
}结合RequestBody处理JSON数据
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;RestController
public class UserController {PostMapping(/users)public ResponseEntityUser createUser(RequestBody CreateUserRequest request) {User user userService.createUser(request.getName(), request.getEmail());return ResponseEntity.ok(user);}static class CreateUserRequest {private String name;private String email;// getters and setters}
}