需要四个页面:提交数据的login.jsp页面,处理数据的checklogin.jsp页面以及显示结果的welcome.jsp页面和error.jsp页面
基础知识:
login.jsp中的表单通过<form action=”checklogin.jsp”method=”POST”>…</form>语句,将用户数据提交给checklogin.jsp中;
checklogin.jsp通过语句Stringusername=request.getParameter(“username”)将用户数据捕获;
checklogin.jsp通过<jsp:forward page=”welcome.jsp”></jsp:forward>跳转到结果页面welcom.jsp中,在servlet中还可以通过response.senRedirect(“welcome.jsp”)来实现。
保持用户登录信息:session.setAttribute(“username”,username);或者request.getSession().setAttribute(“username”,username);
获取UserBean对象:
<jsp:useBeanid=”user” class=”login.UserBean” scope=”page”>
<jsp:setPropertyname=”user” property=”*”/>
</jsp:useBean>
即以JavaBean方式操作UserBean,创建该类的一个对象id=”user”,将用户提交的表单数据对应填入该对象,并使之有效范围为page即一次请求。
具体实现流程:
1>
用户在login.jsp页面中提交一个表单,包含username和password数据,然后由checklogin.jsp来处理: <form action=”checklogin.jsp” method=”POST”>…</form>
2>
页面中提交的username和password数据被直接封装到UserBean的一个实例(对象)中,对应的代码为:
<%@pageimport=”login.UserBean”%>
<jsp:useBeanid=”user” class=”login.UserBean” scope=”page”>
<jsp:setPropertyname=”user” property=”*”/>
</jsp:useBean>
3> 在checklogin.jsp页面中调用user.cheklogin()方法访问数据库验证数据;
4> 执行转发,从而将访问数据库的代码从JSP页面中分离。