1.新建web項目:springmvc
2.導入springmvc需要的jar包
3.配置web.xml文件(核心代碼)
<servlet> <servlet-name>spmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spmvc</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
4.編寫index.jsp頁面(核心代碼)
<form action="login.do" method="post"> username:<input type="text" name = "username" ><p> password:<input type="password" name = "password" ><p> <input type="submit" value="登錄"> </form>
5.編寫loginSuccess.jsp 和 loginError.jsp 頁面 代碼略(隨意標記下就是)
6.編寫java代碼(核心代碼)
@Controller public class loginAction { @RequestMapping("login.do") public String login(String username,String password){ if ("admol".equals(username)) { System.out.println(username +" 登錄成功"); return "loginSuccess";//邏輯視圖名 跳轉頁面默認為轉發
System.out.println(username +" 登錄成功");
} return "loginError"; } }
注意:在導入ModelAndView包的時候是 導入servlet下的包。org.springframework.web.servlet.ModelAndView;
方法中的參數名必須和jsp頁面傳遞過來的name屬性名字一樣
7.配置spmvc-servlet.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:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <!-- 啟用spring mvc注解 --> <context:annotation-config></context:annotation-config> <!-- 掃描包 --> <context:component-scan base-package="com.wjl.web"></context:component-scan> <!-- 對轉向頁面的路徑解析。prefix:前綴, suffix:后綴 如:http://127.0.0.1:8080/springmvc/jsp/****.jsp--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/jsp/" p:suffix=".jsp"></bean> </beans>
8.將項目發布到Tomcat服務器並運行。
測試 結果:


使用其他方式傳遞:
/** * 返回的是一個ModelAndView * @param username 頁面傳遞的用戶名 * @param password 頁面傳遞過來的密碼 * @return */ @RequestMapping("login2.do") public ModelAndView login2(String username,String password){ if ("admol".equals(username)) { System.out.println(username +" 登錄成功2"); return new ModelAndView("loginSuccess");//邏輯視圖名 跳轉頁面默認為轉發 } return new ModelAndView("redirect:/jsp/loginError");//以重定向的方式 } /** * 傳遞一個JAVABEAN對象給控制器 * @param users bean對象 * @return */ @RequestMapping(value="login3.do",method=RequestMethod.POST) public ModelAndView login3(@ModelAttribute("users") Users users){ if ("admol".equals(users.getUsername()) && "123".equals(users.getPassword())) { System.out.println(users.getUsername() +" "+ users.getPassword()); return new ModelAndView("loginSuccess"); } return new ModelAndView("redirect:/jsp/loginError.jsp");//以重定向的方式 }
jsp頁面只需要改變下form表單的action就行。
Users.java
1 package com.wjl.bean; 2 3 /** 4 * @author Admol 5 *2015年1月3日 6 */ 7 public class Users { 8 9 private String username; 10 private String password; 11 public String getUsername() { 12 return username; 13 } 14 public void setUsername(String username) { 15 this.username = username; 16 } 17 public String getPassword() { 18 return password; 19 } 20 public void setPassword(String password) { 21 this.password = password; 22 } 23 24 }
測試結果就不寫了。
