工程目录结构
通过实体 Bean 接收请求参数
package control;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import pojo.UserForm;
import javax.servlet.http.HttpSession;
@Controller
@RequestMapping("/user")
public class UserController {
private static final Log logger = LogFactory.getLog(UserController.class);
@RequestMapping("/login")
public String login(UserForm user, HttpSession session, Model model) {
if ("zhangsan".equals(user.getUname())
&& "123456".equals(user.getUpass())) {
session.setAttribute("u", user);
logger.info("成功");
return "main";
} else {
logger.info("失败");
model.addAttribute("messageError", "用户名或密码错误");
return "login";
}
}
@RequestMapping("/register")
public String register(UserForm user, Model model) {
if ("zhangsan".equals(user.getUname())
&& "123456".equals(user.getUpass())) {
logger.info("成功");
return "login";
} else {
logger.info("失败");
model.addAttribute("uname", user.getUname());
return "register";
}
}
}
通过处理方法的形参接收请求参数
@RequestMapping("/name")
public String registername(String uname,String upass, Model model) {
if ("zhangsan".equals(uname)
&& "123456".equals(upass)) {
logger.info("成功");
return "login";
} else {
logger.info("失败");
model.addAttribute("uname", uname);
return "register";
}
}
通过 HttpServletRequest 接收请求参数
@RequestMapping("/servlet")
public String register(HttpServletRequest request,Model model) {
String uname = request.getParameter("uname");
String upass = request.getParameter("upass");
if ("zhangsan".equals(uname)
&& "123456".equals(upass)) {
logger.info("成功");
return "login";
} else {
logger.info("失败");
model.addAttribute("uname", uname);
return "register";
}
}
通过 @PathVariable 接收 URL 中的请求参数
@RequestMapping("/url")
public String register(@PathVariable String uname,@PathVariable String upass,Model model) {
if ("zhangsan".equals(uname)
&& "123456".equals(upass)) {
logger.info("成功");
return "login";
} else {
model.addAttribute("uname", uname);
return "register";
}
}
通过 @RequestParam 接收请求参数
@RequestMapping("/request")
public String register(@RequestParam String uname,
@RequestParam String upass, Model model) {
if ("zhangsan".equals(uname) && "123456".equals(upass)) {
logger.info("成功");
return "login";
} else {
model.addAttribute("uname", uname);
return "register";
}
}
通过 @ModelAttribute 接收请求参数
@RequestMapping("/modelattribute")
public String register(@ModelAttribute("user") UserForm user) {
if ("zhangsan".equals(uname) && "123456".equals(upass)) {
logger.info("成功");
return "login";
} else {
logger.info("失败");
return "register";
}
}