`
lgsun592
  • 浏览: 54669 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

一个简单的Spring验证登录示例

    博客分类:
  • Java
阅读更多
//*************************************
*
*开发环境:Eclipse J2EE,JDK 1.6,Tomcat 6.x,Spring 3.x
*主要技术:Spring WEB应用,Spring Validator,国际化
*主要功能:登录、验证
*附件为工程源码(带jar包)
*
*************************************/


web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance http://java.sun.com/dtd/web-app_2_3.dtd"
	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	id="WebApp_ID" version="2.5">
	<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/spring-servlet.xml</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</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>

	<display-name>SpringMVC</display-name>
	<welcome-file-list>
		<welcome-file>index.html</welcome-file>
		<welcome-file>index.htm</welcome-file>
		<welcome-file>index.jsp</welcome-file>
		<welcome-file>default.html</welcome-file>
		<welcome-file>default.htm</welcome-file>
		<welcome-file>default.jsp</welcome-file>
	</welcome-file-list>
</web-app>

spring-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
	<!-- 定义国际化消息 -->
	<bean id="messageSource"
		class="org.springframework.context.support.ResourceBundleMessageSource">
		<property name="basename">
			<value>messages</value>
		</property>
	</bean>
	<bean id="localResolver"
		class="org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver" />
	<!-- 定义映射 -->
	<bean id="urlMapping"
		class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
		<property name="mappings">
			<props>
				<prop key="login.do">loginAction</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存放路径 -->
		<property name="prefix">
			<value>/WEB-INF/jsp/</value>
		</property>
		<!-- 定义JSP后缀 -->
		<property name="suffix">
			<value>.jsp</value>
		</property>
	</bean>
	<!-- 定义控制器 -->
	<bean id="loginAction" class="com.lgsun.action.LoginAction">
		<property name="commandClass">
			<value>com.lgsun.action.Users</value>
		</property>
		<!-- 定义验证类 -->
		<property name="validator">
			<ref bean="loginValidator" />
		</property>
		<!-- 定义验证失败返回的页面 -->
		<property name="formView">
			<value>login</value>
		</property>
		<!-- 定义验证成功返回的页面 -->
		<property name="successView">
			<value>success</value>
		</property>
	</bean>
	<bean id="loginValidator" class="com.lgsun.action.LoginValidator" />
</beans>

class LoginAction extends SimpleFormController
package com.lgsun.action; 

import java.util.Map;

import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;

public class LoginAction extends SimpleFormController
{
	private Logger	logger	= Logger.getLogger(getClass().getName());

	@Override
	protected ModelAndView onSubmit(Object command, BindException errors)
	{
		logger.log(Level.INFO, "onSubmit method");
//		Users users = (Users)command;
		Users users = new Users();
		Map<String,Object> model =errors.getModel();
		users.setUserName("change");
		model.put("users", users);
		String success =getSuccessView();
		return new ModelAndView(success,model);
	}
}

分享到:
评论
2 楼 lgsun592 2011-03-25  
javawjn 写道
页面是怎么显示错误信息的呢??

在login.jsp中的${status.errorMessage}负责显示错误信息啊
1 楼 javawjn 2011-03-25  
页面是怎么显示错误信息的呢??

相关推荐

    spring security简单示例

    Spring Security 是一个强大的且高度可定制的身份验证和访问控制框架,用于保护基于Java的应用程序。在本示例中,我们将探讨如何使用Spring Security为简单的Web应用程序添加安全功能。首先,让我们了解一下Spring ...

    spring3.0Mvc简单示例

    Spring 3.0 MVC 是一个基于Java的企业级框架,用于构建Web应用程序,特别是控制器、视图和模型组件的分离。这个“spring3.0Mvc简单示例”旨在帮助开发者快速理解并入门Spring MVC的基本概念和操作流程。让我们深入...

    SpringCloud示例代码

    5. **配置中心SpringCloud Config**:SpringCloud Config提供了一个集中化的外部配置服务,支持配置的实时刷新。在示例中,你可以看到如何设置配置服务器,以及如何在微服务中使用Config Client动态获取和更新配置。...

    spring webwork hibernate结合登录示例

    在这个登录示例中,Spring可能被用来管理WebWork和Hibernate的bean,如SessionFactory、DataSource等,以及处理登录业务逻辑的服务类。 2. **WebWork/Struts2**:WebWork(现为Struts2)是一个基于MVC模式的Web应用...

    spring mvc官方示例

    - **@Controller**:标记在类上,表示该类是一个Spring MVC的控制器。 - **@RequestMapping**:用于映射HTTP请求,可以标注在类或方法上,定义请求的URL模式。 - **@GetMapping, @PostMapping, @PutMapping, @...

    Spring拦截器示例

    如果使用`@AspectJ`,我们可以定义一个`@Before`通知来验证余额,一个`@After`通知来更新状态。 配置拦截器时,我们需要在Spring配置文件中声明拦截器,或者在Spring Boot应用中通过`WebMvcConfigurer`接口的实现...

    spring mvc用户登录示例

    例如,一个简单的登录处理方法可能如下所示: ```java @Controller public class UserController { @RequestMapping(value = "/login", method = RequestMethod.POST) public String handleLogin(@RequestParam...

    Spring Cloud OpenFeign示例代码

    首先,`spring-cloud-user-service` 是一个提供用户相关操作的服务,可能包含用户注册、登录、查询用户信息等功能。在Spring Cloud OpenFeign的场景下,这个服务可以作为一个被调用的服务,对外暴露RESTful API。...

    SpringIoc示例代码

    这通常是一个测试类,用于验证Spring IOC的配置和工作方式。在这个测试类中,可能会有以下几个关键部分: 1. **Bean定义**:在Spring中,一个Java类可以被声明为一个Bean,这可以通过XML配置文件中的`&lt;bean&gt;`标签...

    Spring MVC入门(登录示例)

    在这个入门教程中,我们将通过一个简单的登录示例来学习 Spring MVC 的基本概念和工作流程。 ### 1. Spring MVC 架构 Spring MVC 包含了以下组件: - **DispatcherServlet**:它是整个流程的入口,负责接收请求并...

    spring3login 登录代码 示例

    在登录场景中,你可能需要创建一个登录页面模板,显示登录表单,以及登录成功或失败后的信息。 7. **配置文件**:Spring 3的配置通常使用XML,你需要在`spring-servlet.xml`或类似的配置文件中定义...

    spring示例2

    标题“spring示例2”指的是一个关于Spring框架的实践案例,这是对Spring框架深入理解和学习的一个环节。Spring是一个广泛使用的Java企业级应用开发框架,它提供了丰富的功能,包括依赖注入、面向切面编程、事务管理...

    spring security3.07的tutorial和contacts示例源码

    这个示例可能展示了如何将Spring Security整合到一个实际的应用中,比如一个联系人管理应用。在这个例子中,你可能会看到如何实现用户注册、登录、角色分配、访问控制等功能。源码中可能会包含Controller、Service、...

    Spring整合RestEasy示例工程源码

    RestEasy是JBoss的一个项目,它是一个符合JSR 311规范的RESTful服务实现,支持多种Java EE容器,包括Jetty。RestEasy提供了注解驱动的API,使得开发者可以快速地构建REST服务,同时提供多种客户端调用工具,方便测试...

    Spring ws 小示例

    本示例将带你了解如何利用 Spring WS 实现一个简单的 Web 服务。 ### 一、Spring WS 概述 Spring WS 是为了解决在 Java 平台上创建和消费 Web 服务而设计的。它强调了基于 WSDL(Web 服务描述语言)的契约优先方法...

    spring mvc入门示例

    Spring MVC 是一个强大的Java Web开发框架,用于构建可维护、高性能和灵活的Web应用程序。它作为Spring框架的一部分,提供了一种模型-视图-控制器(MVC)架构,帮助开发者将业务逻辑、用户界面和数据访问分离开来,...

    spring boot整合CAS Client实现单点登陆验证的示例

    Spring Boot 整合 CAS Client 实现单点登录验证的示例 Spring Boot 整合 CAS Client 是一种流行的解决方案,用于实现单点登录(Single Sign-On,简称 SSO)。在多个应用系统中,用户只需要登录一次就可以访问所有...

    Spring boog 项目示例

    Spring Boot 是一个由 Pivotal 团队开发的 Java 框架,旨在简化 Spring 应用程序的初始搭建以及开发过程。它集成了大量常用的第三方库配置,如 JDBC、MongoDB、JPA、RabbitMQ、Quartz 等,让你可以“零配置”地快速...

Global site tag (gtag.js) - Google Analytics