这是登陆界面:login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登陆界面</title>
<%
if("login_error".equals(request.getParameter("message"))){ %>
<script type="text/javascript"> alert("用户名或者密码错误!"); </script>
<%}else{%>
<!-- 没有收到任何错误信息 -->
<% }%>
</head>
<body>
<form action="loginAction.jsp" method="post"> 用户名:<input type="text" name="userName"><br> 密 码:<input type="password" name="userPwd"><br>
<input type="submit" name="btnLogin" id="btnLogin" value="登陆">
</form>
</body>
</html>
这是业务逻辑运算界面:login_action.jsp(后台运行不显示)
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
//后去刻画段的发送上来的两个参数(post方法发送过来的编码不是UTF-8) String name =request.getParameter("userName"); String pwd = request.getParameter("userPwd"); //解决中文所产生的乱码,对两个参数进行转码,从默认的iso-8859-1转为UTF-8,这是一个很很差的解决方法 name = new String(name.getBytes("iso-8859-1"),"UTF-8"); pwd = new String(pwd.getBytes("iso-8859-1"),"UTF-8"); if( "kobe".equals(name) && "123".equals(pwd)){ //登陆成功,设置session,标记一下这个用户已经登陆 session.setAttribute("user",name); //跳转到成功的后台页面console.jsp response.sendRedirect("console.jsp"); }else{ //登陆失败,响应客户端,让客户端从新发出新的请求(登陆界面) response.sendRedirect("login.jsp?message=login_error"); } %>
这是登陆成功页面:Ok.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1 align='center'>登陆成功!湖人总冠军!</h1>
<h1 align='center'>欢迎${user}</h1>
</body>
</html>
输入错误的帐号或者密码之后显示的结果javascript
成功后的结果html