web實現簡單的前端控制器

這個前端控制器主要實現了登陸的功能

首先我們線創建一個Login實體類,在這裏我省略了dao層,省去了於數據庫交互的麻煩,直接對字段進行了賦值,如下所示:

package com.src.Bean;

public class Login {
	private String userName = "admin";
	private String password = "123456";
	
	
	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;
	}
	
}

然後創建一個接口,名叫Action

package com.src.Interface;

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

public interface Action {
	public String execute(HttpServletRequest request, HttpServletResponse response);
}

 創建接口的實現類,也就是登陸頁面的WelcomeAction類,這個實現類通過反射獲取對象並進行實例化,如果要與數據庫進行交互可以使用request獲取參數並讀取數據進行判斷是否正確。

package com.src.servelt;

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

import com.src.Bean.Login;
import com.src.Interface.Action;

public class WelcomeAction implements Action {

	@Override
	public String execute(HttpServletRequest request, HttpServletResponse response) {
		Class<?> cla;
		Login login = null;
		try {
			cla = Class.forName("com.src.Bean.Login");
			login = (Login)cla.newInstance();
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (InstantiationException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		request.setAttribute("user", login.getUserName());
		request.setAttribute("password",login.getPassword());
		return "/welcome.jsp";
	}

}

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章