應用Spring IOC技巧完成用戶登錄驗證機制。本站提示廣大學習愛好者:(應用Spring IOC技巧完成用戶登錄驗證機制)文章只能為提供參考,不一定能成為您想要的結果。以下是應用Spring IOC技巧完成用戶登錄驗證機制正文
應用 Spring IOC 技巧完成用戶登錄的驗證機制,對用戶停止登錄驗證。
起首應用 Spring 的主動拆卸形式將 User 對象注入到掌握器中,然後將用戶輸出的用戶名和暗碼與體系中限制的正當用戶的用戶名和暗碼停止婚配。
當用戶名與暗碼婚配勝利時,跳轉到登錄勝利頁面;當用戶名與暗碼不婚配時,跳轉到登錄掉敗的頁面。
1.創立 User 對象,界說用戶名和暗碼屬性,代碼以下:
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.創立掌握器 TestUtil ,注入 User 對象並停止登錄驗證。代碼以下:
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.在 Spring 的設置裝備擺設文件 applicationContext.xml 中為 User 對象的屬性賦值,並應用主動拆卸的方法在掌握器 TestUtil 中注入 User 對象。代碼以下:
<?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.在 web.xml 文件中設置裝備擺設 applicationContext.xml 的主動加載,當項目啟動後法式將主動加載設置裝備擺設文件中的信息。代碼以下:
<!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>
備注:
TestUtil 中繼續的類 AbstractController 須要引關於 spring-web-mvc 的 JAR 包支撐。
////end
以上就是本文的全體內容,願望對年夜家的進修有所贊助,也願望年夜家多多支撐。