上一篇博文,我们写了第一个SpringMVC的小测试,但是在实际的开发中,我们通常不是使用那样的方式,而是使用注解,接下来,我们写一写如何利用注解开发!
上一篇我们写得登陆,这一篇我们写注册!
1、创建注册动态页面
里面写一个表单用于提交数据:
<form action="register" method="post">
用户名:<input type="text" name="username"></br>
密码:<input type="password" name="password"></br>
邮箱:<input type="email" name="email"></br>
<input type="submit" value="注册">
</form>
2、创建User实体类:
public class User {
private String username;
private String password;
private String email;
public String getUserName() {
return username;
}
public void setUserName(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
3、创建RegisterController类:
/**
* 注册页面控制器
*/
@Controller // 指明页面控制器 好处:不需要实现任何借口和继承任何类
public class RegisterController {
@RequestMapping("register") // 请求映射页面控制器处理方法
public String register( // 请求参数数据绑定方式一
@RequestParam(value = "username") String username,
@RequestParam(value = "password") String password,
@RequestParam(value = "email") String email) {
System.out.println(username);
System.out.println(password);
System.out.println(email);
// 设置逻辑视图名(相单于页面跳转)
return "RegisterSuccess";
}
//如果前端需要传多个参数到后台,SpringMVC把数据自动封装成了对象,前提条件是获取的name要和bean里面的属性名一样!
@RequestMapping("register2") // 请求映射页面控制器处理方法
public String register2(User user) { // 请求参数数据绑定方式二,同时把数据放到request里面
System.out.println(user);
return "RegisterSuccess"; //跳转页面
}
@RequestMapping("register3")
public String register3(User user, ModelMap modelMap) { // 添加模型数据
//数据模型可以把数据从后台传入到前端
// 作用相当于request.setAttribute("message","添加模型数据")
modelMap.addAttribute("message", "添加模型数据");
return "RegisterSuccess";
}
@RequestMapping("register4") // 请求映射页面控制器处理方法
public String register4(HttpServletRequest req, HttpServletResponse response) {// 使用底层req,resp等对象
String username = req.getParameter("username");
String password = req.getParameter("password");
System.out.println(username + "====" + password);
return "RegisterSuccess";
}
@RequestMapping("register5") // 请求映射页面控制器处理方法
public String register5(User user, ModelMap modelMap, SessionStatus sessionStatus) { // session中设置属性
if (modelMap.get("session") == null) {
modelMap.addAttribute("session", "session属性类容");
} else {
// 清除session属性
sessionStatus.setComplete();
}
return "RegisterSuccess";
}
}
这里我写了五个方法,根据测试修改页面表单提交方法即可!
4、添加配置文件:
<!-- 开启springmvc注解驱动 -->
<mvc:annotation-driven/>
5、创建跳转页面:
页面里面还是通过EL表达式获取后台传入的数据就行了!