我在上一篇文章中介绍了 使用Get方式提交数据到Tomcat服务器,这篇将介绍使用Post方式提交数据到服务器,由于Post的方式和Get方式创建Web工程是一模一样的,只用几个地方的代码不同所以,我就直接介绍不同的地方,第一个不同点是,提交方式不同,所以修改LoginServlet.Java中的代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
package com.fyt.org;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginServlet extends HttpServlet {
public LoginServlet() {
super ();
}
public void destroy() {
super .destroy();
}
//使用Get方式向服务器提交数据
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
//使用Post方式向服务器提交数据
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//获取从浏览器中发送过来的用户名
String username = request.getParameter( "username" );
//获取从客户端发送过来的密码
String password = request.getParameter( "password" );
//使用iso8859-1编码将username转换成字节数组
//再使用utf-8把字节数组转换成字符串
username = new String(username.getBytes( "iso8859-1" ), "utf-8" );
//在控制台中打印用户名和密码
System.out.println( "username=" + username);
System.out.println( "password=" + password);
//获得一个输出流
OutputStream os = response.getOutputStream();
//如果用户名和密码都输入正确
if ( "小志" .equals(username) && "123" .equals(password)) {
//将字符发送至浏览器中
os.write( "登录成功" .getBytes( "utf-8" ));
}
else {
//将字符串发送到浏览器中
os.write( "登录失败" .getBytes( "utf-8" ));
}
}
}
|
第二个需要修改的地方是index.jsp,将index.jsp中的代码修改成下面的代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
<%@ page language= "java" import = "java.util.*" pageEncoding= "utf-8" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+ "://" +request.getServerName()+ ":" +request.getServerPort()+path+ "/" ;
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >
<html>
<head>
<base href= "<%=basePath%>" >
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv= "pragma" content= "no-cache" >
<meta http-equiv= "cache-control" content= "no-cache" >
<meta http-equiv= "expires" content= "0" >
<meta http-equiv= "keywords" content= "keyword1,keyword2,keyword3" >
<!--
<link rel= "stylesheet" type= "text/css" href= "styles.css" >
-->
</head>
<body>
<form action= "servlet/LoginServlet" method= "post" >
用户名:<input type= "text" name= "username" ><br>
密码:<input type= "password" name= "password" ><br>
<input type= "submit" value= "提交" >
</form>
</body>
</html>
|
修改完成后将项目部署到Tomcat服务器上,部署方式可以参考我的博客使用Get方式提交数据到Tomcat服务器
部署完成后在浏览器中输入http://192.168.1.102:8080/WebProject/index.jsp,当浏览器中显示下图所示的界面表示项目成功的部署到了浏览器上
在用户名中输入小志,在密码中输入123,当浏览器中显示登录成功时表示登录成功,因为我在服务器中设置的正确的用户名是小志,正确的密码是123
当在用户名或者密码中有一项输入错误时会显示登录失败
关于使用Post方式提交数据到Tomcat服务器的方法就给大家介绍这么多,希望对大家有所帮助!