Spring: authenticates user logon. spring authenticates user logon.
The Spring IOC technology is used to verify user logon.
First, inject the User object into the controller using Spring's automatic assembly mode, and then match the User name and password entered by the User with the User name and password of the legal User defined in the system.
When the user name and password match successfully, the logon success page is displayed. If the user name and password do not match, the logon Failure page is displayed.
1. Create a User object and define the User name and password attributes. The Code is as follows:
package com.importnew;public class User { private String username; private String password; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; }}
2. Create the Controller TestUtil, inject the User object, and perform logon verification. The Code is as follows:
package com.importnew;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.web.servlet.ModelAndView;import org.springframework.web.servlet.mvc.AbstractController;public class TestUtil extends AbstractController{ private User user; public User getUser() { return user; } public void setUser(User user) { this.user = user; } @Override protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception { String username = arg0.getParameter("username"); String password = arg0.getParameter("password"); if(username.equals(user.getUsername()) && password.equals(user.getPassword())){ return new ModelAndView("yes"); }else{ return new ModelAndView("Error"); } }}
3. assign values to the attributes of the User object in the Spring configuration file applicationContext. xml, and inject the User object into the Controller TestUtil by means of automatic assembly. The Code is as follows:
<?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:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" 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.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix"> <value>/</value> </property> <property name="suffix"> <value>.jsp</value> </property> </bean> <bean id="user" class="com.importnew.User" > <property name="username"> <value>admin</value> </property> <property name="password"> <value>123</value> </property> </bean> <bean autowire="byName" id="testUtil" class="com.importnew.TestUtil" > <property name="user"> <ref bean="user"/> </property> </bean></beans>
4. Configure Automatic loading of applicationContext. xml in the web. xml file. When the project starts, the program automatically loads the information in the configuration file. The Code is as follows:
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" ><web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/applicationContext.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> </web-app>
---------------------------------------------------
Note:
The class AbstractController inherited in TestUtil needs to introduce spring-web-mvc JAR package support.
/// End