springMVC学习笔记之实战演练
2013-10-09 10:01
507 查看
1.3实战演练
经过上述的分析,估计很多人都还是不太明白什么意思,包括自己也是似懂非懂,也怪自己的讲解水平有限,不过没关系,这个可以慢慢来,第一节中我们编写了一个简单的SpringMVC例子,现在我们再来写一个例子,算是练习一下吧,代码多写写也就会了。写完后,我们对案例中的配置内容进行详细的讲解。1.3.1 用户注册案例
1.3.1.1编写视图JSP我们要完成一个用户注册功能,所以我们的界面是一个form表单,用于提交用户的信息:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> </head> <body> <form method="post" action="<c:url value='/user.html'/>"> <table> <tr> <td>用户名:</td> <td><input type="text" name="userName"></td> </tr> <tr> <td>密码:</td> <td><input type="text" name="passWord"></td> </tr> <tr> <td>真实姓名:</td> <td><input type="text" name="realName"></td> </tr> <tr> <td colspan="2"><input type="submit" name="提交"></td> </tr> </table> </form> </body> </html>
Form表单提交的是.html的请求,dispatcher会拦截,但它目前还不知道要转到哪,所以接下来我们需要做的是编写控制器。
1.3.1.2 编写控制器
package com.itcast.spring.mvc.action; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.ModelAndView; import com.itcast.spring.mvc.service.UserService; import com.itcast.spring.mvc.service.model.User; @Controller @RequestMapping("/user") public class UserController { @Autowired private UserService userService; //注入业务层的Bean /**处理'/user'的请求,不过请求的方法必须为POST*/ @RequestMapping(method=RequestMethod.POST) public ModelAndView register(User user){ //将表单值映射到User对象中 userService.createUser(user); ModelAndView mav = new ModelAndView(); mav.setViewName("user/createSuccess"); mav.addObject("user", user); return mav; } }
这个控制器会接受到以user开头的url请求,然后做以下逻辑,调用userService的创建用户方法,创建ModelAndView对象,返回给结果视图,而spring的配置文件我们没有修改依旧是:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <context:component-scan base-package="com.itcast.spring"></context:component-scan> <bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"> </property> <property name="prefix" value="/WEB-INF/jsp/"></property> <property name="suffix" value=".jsp"></property> </bean> </beans>
1.3.1.3 添加业务对象
package com.itcast.spring.mvc.service.model; public class User { private String userName; private String passWord; private String realName; 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 getRealName() { return realName; } public void setRealName(String realName) { this.realName = realName; } }
package com.itcast.spring.mvc.service.impl; import org.springframework.stereotype.Service; import com.itcast.spring.mvc.service.UserService; import com.itcast.spring.mvc.service.model.User; @Service public class UserServiceImpl implements UserService{ public void createUser(User user) { System.out.println("注册用户:"+user.getUserName()); System.out.println("注册密码:"+user.getPassWord()); System.out.println("真实姓名:"+user.getRealName()); user.setPassWord("密码已加密"); } }
1.3.1.4 执行测试
1.3.1.5 源代码下载地址
http://download.csdn.net/detail/qq522935502/6371301
相关文章推荐
- 基于《Selenium 2自动化测试实战》的学习笔记(9)—— 键盘事件
- SpringMVC学习笔记----
- 《Spring 3.x 企业应用开发实战》学习笔记 第三章 ApplicationContext和BeanFactory区别
- 汇编学习笔记第4~10章:汇编原理-汇编指令实战
- SpringMVC学习笔记
- 实战开发 C# 索引器学习笔记
- SpringMVC_架构 --跟海涛学SpringMVC(学习笔记)
- springMVC学习笔记四(数据类型转换和数据验证)
- springmvc学习笔记---idea创建springmvc项目
- springmvc学习笔记一框架的理解
- 【数据分析 R语言实战】学习笔记 第一章 数据分析导引
- Scala中上下文界定内幕中的隐式参数与隐式参数的实战详解及其在Spark中的应用源码解析之Scala学习笔记-52
- 【数据分析 R语言实战】学习笔记 第三章 数据预处理 (下)
- 【JAVAWEB学习笔记】网上商城实战5:后台的功能模块
- Mysql DBA 高级运维学习笔记-创建Mysql用户及授权的多种方法实战
- springmvc学习笔记(29)——HandleException处理异常
- [SpringMVC]SpringMVC学习笔记一: springmvc原理及实例解析.
- springMvc拦截器学习笔记
- 6. Python脚本学习实战笔记六 使用CGI远程编辑
- SpringMVC学习笔记