⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 forgotcontroller.java

📁 网站购物车经典是例子
💻 JAVA
字号:
package onlyfun.caterpillar.web;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import onlyfun.caterpillar.model.IUserDAO;
import onlyfun.caterpillar.model.SimpleMail;
import onlyfun.caterpillar.model.User;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;


//AbstractController实现了Controller接口,并继承了WebContentGenerator,提供了Session缓存与同步化的处理.
//在使用Controller或是AbstractController时遇到用户提供请求参数,则必须自行从HttpServletRequest对象中取得请求参数,
//如果打算将这些请求参数设置至某个对象,则必须自行编写相关逻辑或进行类型转换等动作...
public class ForgotController extends AbstractController {
	
	private IUserDAO userDAO;
	private SimpleMail simpleMail;
	private String loginPage;
	private String forgotPage;

	
	public ModelAndView handleRequestInternal(HttpServletRequest request,
			HttpServletResponse response) throws Exception {
		
		//getParameter("email")中的email与forgot.jsp中的email相对应...
		String email = request.getParameter("email");
		
		if (email != null && !"".equals(email)) {
			
			//根据邮件地址查询使用者的资料
			User user = getUserDAO().findByEmail(email);

			//取得SimpleMail实例并设定相关数据以发送邮件(sendPasswdMail()方法是SimpleMail类中的一个方法...)	
			getSimpleMail().sendPasswdMail(user.getEmail(), user.getUsername(),user.getPasswd());
			
			//构造ModelAndView的第一个参数为要呈现的目标网页(或资源)路径,第二个参数是设置用来取得Model对象的键(key),第三个参数是给View层呈现数据的Model对象
			//这里只用到了第一个参数,getLoginPage()与定义文件web-config.xml中的forgotController实例中的"forgotPage"属性相对应...
			return new ModelAndView(this.getLoginPage());
			
		} else {
			return new ModelAndView(this.getForgotPage());
		}
	}

	
	public void setUserDAO(IUserDAO userDAO) {
		this.userDAO = userDAO;
	}

	public IUserDAO getUserDAO() {
		return userDAO;
	}

	public void setSimpleMail(SimpleMail simpleMail) {
		this.simpleMail = simpleMail;
	}

	public SimpleMail getSimpleMail() {
		return simpleMail;
	}

	public void setLoginPage(String loginPage) {
		this.loginPage = loginPage;
	}

	public String getLoginPage() {
		return loginPage;
	}

	public void setForgotPage(String forgotPage) {
		this.forgotPage = forgotPage;
	}

	public String getForgotPage() {
		return forgotPage;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -