signoncontroller.java.svn-base

来自「spring+hibernate做的网上订餐系统」· SVN-BASE 代码 · 共 57 行

SVN-BASE
57
字号
package com.pure.web.spring;

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

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;

import com.pure.domain.Member;
import com.pure.domain.logic.MemberFacade;

/**
 * @author Juergen Hoeller
 * @since 30.11.2003
 */
public class SignonController implements Controller {

	private MemberFacade memberFacade;


	public MemberFacade getMemberFacade() {
		return memberFacade;
	}


	public void setMemberFacade(MemberFacade memberFacade) {
		this.memberFacade = memberFacade;
	}


	public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
		String username = request.getParameter("username");
		String password = request.getParameter("password");
		Member loginMember = new Member();
		loginMember.setUsername(username);
		loginMember.setPassword(password);
		
		Member member = this.memberFacade.login(loginMember);
		if (member == null) {
			return new ModelAndView("Error", "message", "Invalid username or password.  Signon failed.");
		}
		else {
			MemberSession memberSession = new MemberSession(member);
			request.getSession().setAttribute("memberSession", memberSession);
			String forwardAction = request.getParameter("forwardAction");
			if (forwardAction != null) {
				response.sendRedirect(forwardAction);
				return null;
			}
			else {
				return new ModelAndView("index");
			}
		}
	}

}

⌨️ 快捷键说明

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