登陆功能
前面已经配置好环境变脸了,接下来实现一个简单的登陆功能
1. 运行机制
简单的讲,
1.用户访问jsp页面,在jsp页面输入信息
2.jsp将用户输入的信息传递给servlet
3.servlet控制页面跳转
是不是很简单?
2. 前段页面login.jsp
-
1.在web目录下新建一个名为login的jsp页面(右键web页—>新建—>jsp…)
-
同样的方法,在web目录下再创建一个success.jsp,faild.jsp
此时,你的项目应该是这样的。。。
2.编辑login.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form action="doLogin">
用户名:
<br>
<input name="us" type="text" /><br>
密码:
<br>
<input name="pw" type="password" /><br>
<button type="submit">登陆</button>
</form>
</body>
</html>
我们发现以上代码中有这么两个地方
1.
<form action="doLogin" method="post">
这里action的值是指表单提交的地址,也就是说这个表单会提交到名为doLogin的servlet中进行处理
method=”post”表示表单的提交方式为post,对于method属性,它一般有两个值,get和post,在这里先不说get和post的区别了,在写servlet时会感受到一点点这两种方式的区别
2.
<input name="us" type="text" />
这里有一个name属性,我们知道servlet接收表单信息并进行处理,为了能区分不通过输入(比如这里就有两个输入,分别是用户名和密码),于是就添加了name这个属性,我们在servlet中可以用这种方式接收前台的数据:
String username=request.getParameter("us");
String password=request.getParameter("ps");
//us,ps分别是用户名,密码这两个输入框中输入的数据
3创建servlet(doLogin.java)
右键源包—->新建—–>servlet
在这里要填写servlet的相关信息
1.类名:doLogin
2.包:com.servlet
然后点下一步,选择将信息添加到部署描述符(web.xml),点击完成
(注意了,这一项一定要选,后面会讲到web.xml的意义)
在点击完成之后,你就创建了一个servlet,我们都知道,servlet其实就是一个java类,
你会发现你的源包目录下多了com.servlet包,在这个包下有一个doLogin.java,此时你的工程目录应该是这样的
4 编辑doLogin.java
首先,我们打开doLogin.java
我们会发现doLogin.java中只有三个函数,分别是
protected void processRequest(HttpServletRequest request, HttpServletResponse response){
}
protected void doGet(HttpServletRequest request, HttpServletResponse response)
protected void doPost(HttpServletRequest request, HttpServletResponse response)
还记得login.jsp中的表单吗?
我们时这样写的
<form action="doLogin" method="post">
-
我们选择的方式是post,所以我们可以编辑doPost函数(当然也可以编辑processRequest函数)
-
(doGet函数只能处理get请求,doPost函数只能处理post请求,而progressRequest函数可以同时处理get和post请求)
我们在doLogin.java中实现这么几个功能
1. 接收login.jsp中传递的数据(用户名,密码)
2. 判断用户名,密码是否正确
3. 页面跳转,用户名密码正确,跳转到success.jsp,错误则跳转到faild.jsp
在明确了以下几点之后,我们开始写代码
接下来编辑doPost函数
protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
request.setCharacterEncoding("UTF-8"); //设置编码,不加容易乱码
String username=request.getParameter("us"); //获取用户名
String password=request.getParameter("ps"); //获取密码
if(username==null|password==null){
response.sendRedirect("fail.jsp"); //页面跳转
return;
}
if(username.equals("1")&&password.equals("1")){
//注意,这里要用equals而不是用等于
response.sendRedirect("success.jsp");
}
else{
response.sendRedirect("fail.jsp");
}
processRequest(request, response);
}
Ctrl+s保存一下
接下来就可以运行了,
右键login.jsp—>运行文件
任务完成
你可以去下载整个项目文件:
下载地址
本文介绍如何使用JSP和Servlet快速构建一个简易的登录系统。包括前端页面设计、表单提交处理及后端验证流程。
682

被折叠的 条评论
为什么被折叠?



