web.xml
<servlet> <servlet-name>DispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>DispatcherServlet</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
applicationContext.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:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <!-- 配置Controller类 --> <bean id="loginControl" class="com.fengyi.control.LoginContorller"> <property name="failView" value="index"/> <property name="successView" value="show"/> </bean> <!-- 配置Controller 和 URL 的映射关系! --> <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <prop key="/login.do">loginControl</prop> </props> </property> </bean> <!-- 配置试图解析器 jsp freemark... --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/"/> <property name="suffix" value=".jsp"/> </bean> </beans>
Controller.java
package com.fengyi.control; import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.AbstractController; import com.fengyi.entity.Users; public class LoginContorller extends AbstractController { private String failView ; private String successView ; public String getFailView() { return failView; } public void setFailView(String failView) { this.failView = failView; } public String getSuccessView() { return successView; } public void setSuccessView(String successView) { this.successView = successView; } @Override protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception { String name = request.getParameter("username"); String password = request.getParameter("password"); Users user = getUser(name, password) ; Map<String , Object>model = new HashMap<String, Object>(); if(user!=null) { model.put("user", user); return new ModelAndView(successView , model); } //失败时返回的信息 model.put("error", "输入的用户名称或者密码错误!"); return new ModelAndView(failView , model); } //业务逻辑方法 private Users getUser(String username , String password) { if("123".equals(username)&&"123".equals(password)) { Users user = new Users (); user.setPassword("123"); user.setUsername("123"); return user ; } return null ; } }