springMVC例子


1: 以上是项目结构


2:model层

package model;
import java.util.HashMap;
import java.util.Map;


/*********************************
 *
 * author zhang
 *2013-11-20
 ********************************/
public class Userbean {


private static Map<Integer,String> userinfo = new HashMap();

    static{
    userinfo.put(1, "zhang");
    userinfo.put(2, "wang");
    }
    
    /**
     * 是否包含该用户
     * @param username
     * @return
     */
    public static boolean exsitUser(String userno){
    return userinfo.containsKey(Integer.parseInt(userno));
    }

    /**
     * 判断该用户信息是否正确
     * @param userno
     * @param username
     * @return
     */
    public static boolean cofirmUser(Integer userno,String username){
    return userinfo.get(userno).equals(username);
    }

}


3:controller层

package controler;
import java.util.HashMap;
import java.util.Map;


import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


import model.Userbean;


import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;


/*********************************
 * springMVC登录(配置文件类型的)
 * author 
 *2013-11-20
 ********************************/
public class LoginController implements Controller{


private String errorPage;
private String successPage;

public String getErrorPage() {
return errorPage;
}
public void setErrorPage(String errorPage) {
this.errorPage = errorPage;
}
public String getSuccessPage() {
return successPage;
}
public void setSuccessPage(String successPage) {
this.successPage = successPage;
}


@Override
public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception {
String userno = request.getParameter("userno");
String username = request.getParameter("username");
String message = "";
if(userno == "" || username == "" || userno.equals(null) || username.equals(null)){
message = "用户名或者密码为空";
            Map<String, String > model = new HashMap<String, String>();
            model.put("msg",message);
            return new ModelAndView(getErrorPage(), model);
}

if(!Userbean.exsitUser(userno)){
message = username+"不存在";
Map<String, String> model = new HashMap<String, String>();
   model.put("msg",message);
   return new ModelAndView(getErrorPage(),model);
}

if(!Userbean.cofirmUser(Integer.parseInt(userno), username)){
message = "用户密码不正确";
Map<String, String> model = new HashMap<String, String>();
model.put("msg",message);
return new ModelAndView(getErrorPage(), model);
}
else{
Map<String, String> model = new HashMap<String, String>();
model.put("username", username);
return new ModelAndView(getSuccessPage(), model);
}
}


}


4: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.0.xsd">

<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="login.do">login</prop>
</props>
</property>
</bean>

<bean id="login" class="controler.LoginController">
<property name="errorPage">
<value>error.jsp</value>
</property>
<property name="successPage">
<value>success.jsp</value>
</property>
<!--  <property name="userInfoBean" ref="userInfoBean"></property>-->
</bean>
<!--  <bean id="UserInfoBean" class="com.spring.model.UserInfoBean"> </bean>-->
</beans>


5:web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
xmlns="http://java.sun.com/xml/ns/j2ee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
 
<servlet>
 <servlet-name>dispatcherServlet</servlet-name>
 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 <!-- spring配置文件的路径 -->
 <init-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>/WEB-INF/applicationContext.xml</param-value>
 </init-param>
 <load-on-startup>1</load-on-startup><!-- 随tomcat启动而加载 -->
</servlet>

<!-- 拦截所有.do结尾的请求  可修改例如 .jsp等 -->
<servlet-mapping>
 <servlet-name>dispatcherServlet</servlet-name>
 <url-pattern>*.do</url-pattern>
</servlet-mapping>
 
  <welcome-file-list>
    <welcome-file>login.jsp</welcome-file>
  </welcome-file-list>
</web-app>


6:login.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
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%>">
    
    <title>login.jsp</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">    
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
  </head>
  
  <body>
     <form action="login.do" method="post">
       用户编号:<input name="userno"><br>
       用户名:&nbsp;&nbsp;<input name="username">
       <input type="submit" value="提交">
     </form>
  </body>
</html>


7:success.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
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%>">
    
    <title>error.jsp</title>
    
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">    
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->


  </head>
  
  <body>
      欢迎:<%= request.getAttribute("username") %>登录成功!
  </body>
</html>


8:error.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
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%>">
    
    <title>error.jsp</title>
    
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">    
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->


  </head>
  
  <body>
      对不起,登录失败!<%= request.getAttribute("msg") %>
  </body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值