/FormTest/WebContent/content/registerForm.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>form和input標簽的使用</title> </head> <body> <form:form method="post" action="register"> <table> <tr> <td>姓名:</td> <td><form:input path="username"/></td> </tr> <tr> <td>性別:</td> <td><form:input path="sex"/></td> </tr> <tr> <td>年齡:</td> <td><form:input path="age"/></td> </tr> </table> </form:form> </body> </html>
/FormTest/WebContent/WEB-INF/springmvc-config.xml
<?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:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd"> <!-- spring可以自動去掃描base-pack下面的包或者子包下面的java文件 如果掃描到由Spring相關注解的類,則把這些類注冊為Spring的bean --> <context:component-scan base-package="org.fkit.controller"/> <!-- 配置annotation類型的處理映射器 --> <!-- <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping" /> --> <!-- 配置annotation類型的處理器適配器 --> <!-- <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter" /> --> <!-- 設置配置方案:該配置會自動注冊RequestMappingHandlerMapping和RequestMappingHandlerAdapter --> <mvc:annotation-driven/> <!-- 視圖解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" /> </beans>
/FormTest/WebContent/WEB-INF/web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <!-- 定義Spring MVC的前端控制器 --> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/springmvc-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <!-- 讓Spring MVC的前端控制器攔截所有請求 --> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
/FormTest/src/org/fkit/domain/User.java
package org.fkit.domain; import java.io.Serializable; public class User implements Serializable{ private static final long serialVersionUID = 1L; private String username; private String sex; private Integer age; public User() { super(); } public User(String username,String sex,Integer age) { super(); this.setUsername(username); this.setSex(sex); this.setAge(age); } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } }
/FormTest/src/org/fkit/controller/UserController.java
package org.fkit.controller; import org.fkit.domain.User; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @Controller public class UserController { @RequestMapping(value="/registerform",method=RequestMethod.GET) public String registerForm(Model model) { User user = new User("jack", "男", 20); //向mdoel中添加command屬性 model.addAttribute("command",user); return "content/registerForm.jsp"; } }
測試結果:

第二種:給form綁定modelAttribute
/FormTest/WebContent/content/registerForm1.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>form和input標簽的使用2</title> </head> <body> <form:form modelAttribute="user" method="post" action="register"> <table> <tr> <td>姓名:</td> <td><form:input path="username"/></td> </tr> <tr> <td>性別:</td> <td><form:input path="sex"/></td> </tr> <tr> <td>年齡:</td> <td><form:input path="age"/></td> </tr> </table> </form:form> </body> </html>
/FormTest/src/org/fkit/controller/UserController.java
package org.fkit.controller; import org.fkit.domain.User; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @Controller public class UserController { @RequestMapping(value="/registerform1",method=RequestMethod.GET) public String registerForm1(Model model) { User user = new User("jack", "男", 20); //向mdoel中添加command屬性 model.addAttribute("user",user); return "content/registerForm1.jsp"; } }
測試結果:

