`
jiangzhenwei6
  • 浏览: 34217 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Spring MVC 学习

 
阅读更多
引用至http://fangyong2006.iteye.com/blog/117563

用Spring MVC实现用户登录的完整实例      本例子是再Eclipse中建立一个Tomcat工程,来讲解Spring MVC 的全过程,实例代码如下:

<一>编写日记文件放在myMVC/WEB-INF/src下

#指定日志输入文件的大小 

log4j.appender.stdout.MaxFileSize=500KB 

log4j.appender.stdout.MaxBackupIndex=50 

log4j.appender.stdout.Append=true 

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 

log4j.appender.stdout.layout.ConversionPattern=[%-5p]%d{yyyy-MM-ddHH:mm:ss}%c-%m%n 

#定义log4j的显示方式 

log4j.appender.A1=org.apache.log4j.RollingFileAppender 

#指定日志输入文件的名称 

log4j.appender.A1.File=org.log 

#指定日志输入文件的大小 

log4j.appender.A1.MaxFileSize=500KB 

log4j.appender.A1.MaxBackupIndex=50 

log4j.appender.A1.Append=true 

log4j.appender.A1.layout=org.apache.log4j.PatternLayout 

log4j.appender.A1.layout.ConversionPattern=%d{ISO8601}-[%P][%C{1}]-%m%n 

#定义log4j的显示方式 

log4j.appender.A1=org.apache.log4j.RollingFileAppender 

#指定日志输入文件的名称 

log4j.appender.A1.File=gc.log 

#指定日志输入文件的大小 

log4j.appender.gc.MaxFileSize=500KB 

log4j.appender.gc.MaxBackupIndex=50 

log4j.appender.gc.Append=true 

log4j.appender.gc.layout=org.apache.log4j.PatternLayout 

log4j.appender.gc.layout.ConversionPattern=%d{ISO8601}-[%P][%C{1}]-%m%n 

<二>配置web.xml


<?xml version="1.0" encoding="UTF-8"?> 

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" 

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

version="2.4" 

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> 

     <!-- 初始化参数 --> 

     <init-param> 

        <param-name>contextConfigLocation</param-name> 

        <param-value>/WEB-INF/dispatcherServlet-servlet.xml</param-value> 

     </init-param> 

  </servlet> 

  <servlet-mapping> 

     <servlet-name>dispatcherServlet</servlet-name> 

     <url-pattern>*.do</url-pattern> 

  </servlet-mapping> 

  <taglib> 

     <taglib-uri>/spring</taglib-uri> 

     <taglib-location>/WEB-INF/spring.tld</taglib-location> 

  </taglib> 

  <welcome-file-list> 

    <welcome-file>index.jsp</welcome-file> 

  </welcome-file-list> 

</web-app> 


<三>编写登录页面myMVC/gc/jsp目录下login.jsp


<%@taglib prefix="spring" uri="/spring"%> 

<%@ page contentType="text/html;charset=GBK"%> 

<html> 

<head><title><spring:message code="title"/></title></head> 

<body> 

   <form action="/myMVC/login.do" name="User" method="post"> 

      <spring:bind path="command.username"> 

         <spring:message code="username"></spring:message> 

         <input type="text" name="${status.expression }"value="${status.value }"/> 

         <br> 

         <font color="red"><b>${status.errorMessage }</b></font><br> 

      </spring:bind> 

      <spring:bind path="command.password"> 

         <spring:message code="password"></spring:message> 

         <input type="password" name="${status.expression }"value="${status.value }"/> 

         <br> 

         <font color="red"><b>${status.errorMessage }</b></font><br> 

      </spring:bind> 

      <spring:bind path="command.password2"> 

         <spring:message code="password2"></spring:message> 

         <input type="password" name="${status.expression }"value="${status.value }"/> 

         <br> 

         <font color="red"><b>${status.errorMessage }</b></font><br>         

      </spring:bind> 

      <input type="submit" value="<spring:messagecode='submit'/>"/> 

   </form> 

</body> 

</html> 


<四>编写显示成功的页面myMVC/gc/jsp目录下success.jsp

<%@taglib prefix="spring" uri="/spring"%> 

<%@page contentType="text/html;charset=GBK"%> 

<html> 

<head><title><spring:message code="title"></spring:message></title></head> 

<body> 

   <spring:bind path="command.username"> 

      <h3><spring:message code="welcome"></spring:message>{status.value }<spring:message code="loginSuccess"/></h3><br> 

   </spring:bind> 

</body> 

</html> 


<五>编写存放用户登录信息的Bean,在com.gc.action包中建立Java文件User.java


package com.gc.action; 

publicclass User { 

    private String username=null; 

    private String password=null; 

    private String password2=null; 

    public String getPassword() { 

       returnpassword; 

    } 

    publicvoid setPassword(String password) { 

       this.password = password; 

    } 

    public String getPassword2() { 

       returnpassword2; 

    } 

    publicvoid setPassword2(String password2) { 

       this.password2 = password2; 

    } 

    public String getUsername() { 

       returnusername; 

    } 

    publicvoid setUsername(String username) { 

       this.username = username; 

    } 

} 


<六>在com.gc.action包下编写用户验证类UserValidator.java

package com.gc.action; 

import com.gc.action.User; 

import org.springframework.validation.Validator; 

import org.springframework.validation.Errors; 

publicclass UserValidator implements Validator { 

    publicboolean supports(Class clazz){ 

       return clazz.equals(User.class); 

    } 

    publicvoid validate(Object obj,Errors errors){ 

       User user=(User)obj; 

       if(!"tang".equals(user.getUsername())){ 

           errors.rejectValue("username", "usernameerror", null, "用户名不正确"); 

       } 

       if(!"123456".equals(user.getPassword())){ 

           errors.rejectValue("password", "passworderror", null, "密码不正确"); 

       } 

       if(!user.getPassword().equals(user.getPassword2())){ 

           errors.rejectValue("password2", "password2error", null, "2次输入密码不一致"); 

       } 

    } 

} 


<七>在com.gc.action包下编写用户登录逻辑Login.java

package com.gc.action; 

import java.util.Map; 

import org.apache.log4j.Logger; 

import org.springframework.validation.BindException; 

import org.springframework.web.servlet.ModelAndView; 

import org.springframework.web.servlet.mvc.SimpleFormController; 

publicclass Login extends SimpleFormController{ 

    private Logger logger=Logger.getLogger(this.getClass().getName()); 

    public ModelAndView onSubmit(Object command,BindException errors)throws Exception{ 

       User user=(User)command; 

       Map modle=errors.getModel(); 

       modle.put("user", user); 

       returnnew ModelAndView(getSuccessView(),modle); 

    } 

} 


<八>myMVC/WEB-INF目录下编写配置文件dispatcherServlet-servlet.xml

<?xml version="1.0" encoding="UTF-8"?> 

<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" 

"http:www.springframework.org/dtd/spring-bean.dtd"> 

<beans> 

   <!-- 定义国际化消息 --> 

   <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource"> 

      <property name="basename"> 

         <value>messages</value> 

      </property> 

   </bean> 

   <!-- 定义映射 --> 

   <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> 

      <property name="mapping"> 

         <props> 

            <prop key="login.do">login</prop> 

         </props> 

      </property> 

   </bean> 

   <!-- 定义视图及路径 --> 

   <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 

      <property name="viewClass"> 

         <value>org.springframework.web.servlet.view.InternalResourceView</value> 

      </property> 

      <!-- JSP都放在WEB-INF/jsp目录下 --> 

      <property name="prefix"> 

         <value>/WEB-INF/jsp</value> 

      </property> 

      <!-- JSP页面的后缀都四.JSP --> 

      <property name="suffix"> 

         <value>.jsp</value> 

      </property> 

   </bean> 

   <!-- 定义控制器 --> 

   <bean id="login" class="com.gc.action.Login"> 

      <property name="commandClass"> 

         <value>com.gc.action.User</value> 

      </property> 

      <!-- 指定验证类 --> 

      <property name="validator"> 

         <ref bean="userValidator"/> 

      </property> 

      <!-- 指定失败要返回的页面 --> 

      <property name="formView"> 

         <value>login</value> 

      </property> 

      <property name="successView"> 

         <value>success</value> 

      </property> 

   </bean> 

   <!-- 定义验证类 --> 

   <bean id="userValidator" class="com.gc.action.UserValidator"></bean> 

</beans> 


<九>myMVC/WEB-INF/src目录下编写资源文件messages.properties及messages_en_US.properties
messages.properties

title=SpringMVC实例 

username=输入用户名: 

password=输入密码: 

password2=确认密码: 

submit=提交 

welcome=欢迎 

loginSuccess=登录成功 

usernameerror=用户名不正确 

passworderror=密码不正确 

doublepassword=2次密码不一致 
   native2ascii工具转码后 

title=SpringMVC\u5b9e\u4f8b 

username=\u8f93\u5165\u7528\u6237\u540d: 

password=\u8f93\u5165\u5bc6\u7801: 

password2=\u786e\u8ba4\u5bc6\u7801: 

submit=\u63d0\u4ea4 

welcome=\u6b22\u8fce 

loginSuccess=\u767b\u5f55\u6210\u529f 

usernameerror=\u7528\u6237\u540d\u4e0d\u6b63\u786e 

passworderror=\u5bc6\u7801\u4e0d\u6b63\u786e 

doublepassword=2\u6b21\u5bc6\u7801\u4e0d\u4e00\u81f4 
messages_en_US.properties 


title=SpringMVC 

username=username 

password=password 

password2=password2 

submit=submit 

welcome=welcome 

loginSuccess=loginSuccess 

usernameerror=usernameerror 

passworderror=passworderror 

doublepassword=doublepassworderror 
分享到:
评论

相关推荐

    Spring MVC学习指南

    ### Spring MVC 学习指南详解 #### 一、Spring MVC 概述 Spring MVC 是 Spring 框架的一部分,主要用于构建基于 Model-View-Controller (MVC) 设计模式的 Web 应用程序。它提供了丰富的功能来简化 Web 开发过程,...

    Spring MVC学习指南 高清完整.pdf版下载

    通俗移动的Spring MVC入门书籍。请尊重版权,禁止用于商业目的。

    大优惠 Spring MVC学习指南(第2版)2017.pdf

    Spring MVC是Spring框架中用于Web应用快速开发的一个模块,其中的MVC是Model-View-Controller的缩写。作为当今业界最主流的Web开发框架,Spring MVC已经成为当前最热门的开发技能,同时也广泛用于桌面开发领域。 ...

    spring mvc 学习指南

    这个“spring mvc 学习指南”涵盖了从基础到高级的Spring MVC开发技术,旨在帮助开发者深入理解并熟练掌握这一强大的框架。 首先,Spring MVC的核心概念包括DispatcherServlet、Controller、Model、View和ViewModel...

    servlet JSP 和 spring MVC学习指南

    servlet , jsp和spring MVC学习指南电子书,spring MVC学习指南系列书籍。

    Spring MVC学习笔记MD.7z

    这个压缩包“Spring MVC学习笔记MD.7z”包含了作者在学习Spring MVC过程中的笔记、源代码以及相关文档,非常适合初学者或希望深入理解Spring MVC的开发者。 首先,`SpringMVC-Study.7z` 可能是作者整理的Spring MVC...

    Spring.MVC-A.Tutorial-Spring.MVC学习指南 高清可复制版PDF

    Spring MVC 是一个基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于构建Web应用程序的后端控制器。...通过学习,开发者可以熟练地运用Spring MVC来构建高效、可维护的Web应用。

    spring mvc学习代码

    这个"spring mvc学习代码"的压缩包文件显然包含了使用Spring MVC与Hibernate集成开发Web应用的相关示例和实践。下面我们将深入探讨这些知识点。 1. **Spring MVC**:Spring MVC是Spring框架的一部分,它提供了MVC...

    spring mvc学习视频相关资料

    在本“Spring MVC学习视频相关资料”中,我们可以通过提供的资源来深入理解并掌握这一强大的MVC(Model-View-Controller)架构模式。 首先,源码在学习Spring MVC时起着至关重要的作用。通过阅读和分析Spring MVC的...

    Spring MVC 学习笔记

    以下是对Spring MVC学习笔记的详细解释: 1. **创建项目**: 创建Spring MVC项目通常从构建一个Maven工程开始。在命令行中使用Maven的`archetype:generate`命令创建一个JEE5的Web工程。在提供的例子中,使用了特定...

    Spring MVC 学习代码 + PDF文档

    总的来说,这个压缩包提供了从基础到进阶的Spring MVC学习资源,通过实践项目和官方文档,你将能够全面掌握Spring MVC的使用,并具备独立开发和维护Spring MVC应用的能力。记住,理论学习和动手实践相结合是提升技能...

    [免费]Spring MVC学习指南(高清)

    Spring MVC是Spring框架中用于Web应用快速开发的一个模块,其中的MVC是Model-View-Controller的缩写。作为当今业界最主流的Web开发框架,Spring MVC已经成为当前最热门的开发技能,同时也广泛用于桌面开发领域。 ...

    Spring.MVC学习指南(林仪明、崔毅著,人民邮电出版社)

    《Spring MVC学习指南》是由林仪明和崔毅两位作者共同编著,由人民邮电出版社出版的一本专业书籍,主要面向希望深入理解和掌握Spring MVC框架的Java开发者。Spring MVC是Spring框架的重要组成部分,用于构建Web应用...

    Spring MVC 学习记录总结1

    在这个学习记录总结中,我们将深入理解Spring MVC的核心概念、主要组件以及其工作流程。 1. Spring MVC 概述 Spring MVC 是Spring框架的一部分,它基于Spring IoC(Inversion of Control,控制反转)容器,简化了...

    Spring MVC 学习指南 非扫描版,清晰版

    这个“Spring MVC 学习指南”提供了深入理解和掌握该框架的详细教程,非扫描版和清晰版确保了内容的可读性和易理解性,非常适合在电脑上进行学习。 一、Spring MVC 概述 Spring MVC 是Spring框架中的模型-视图-控制...

    Spring MVC学习指南 中文版

    **Spring MVC 学习指南中文版** Spring MVC 是 Spring 框架的重要组成部分,它是一个用于构建 Web 应用程序的模型-视图-控制器(MVC)框架。本指南将深入探讨 Spring MVC 的核心概念、工作原理以及如何在实际项目中...

    spring mvc学习笔记

    ### Spring MVC 学习笔记 #### 一、Spring MVC 核心组件与工作流程 **Spring MVC** 是 **Spring Framework** 的一个重要模块,主要用于构建基于 Web 的应用程序。它提供了简化 Web 开发的一系列功能,包括但不限于...

    Spring MVC学习框架

    Spring MVC 是一个基于 Java 的轻量级 Web 开发框架,它是 Spring ...通过学习和熟练使用 Spring MVC,开发者可以构建出高效、可扩展的 Web 应用。在实际项目中,了解和掌握这些知识点将大大提升开发效率和代码质量。

Global site tag (gtag.js) - Google Analytics