首先注意一点:因为Servlet属于J2ee项目,所以要下载支持java web的IDE与Tomcat服务器
新建一个Dynamic Web Project,在src创建一个类,继承HttpServlet,我取名为Login,并实现两个响应方法doGet与doPost
服务端:
package com.java1234;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class Login
*/
public class Login extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public Login() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
this.doPost(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PrintWriter iout=response.getWriter();
iout.write("wori");
iout.flush();
iout.close();
}
}
这里可以看到我们在doGet方法里调用doPost方法。
在我们实际网络交互时,POST通过数据包提交,GET方法通过url来提交,所以POST方法更加安全
客户端:
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;
public class MainEnter {
public static void main(String[] args)
{
HttpURLConnection con=null;
try{
URL url=new URL("http://localhost:8080/ssss/Login");
con=(HttpURLConnection) url.openConnection();
con.setDoInput(true);
con.setDoOutput(true);
con.setRequestMethod("POST");
con.setRequestProperty("Charset", "utf-8");
DataOutputStream dop=new DataOutputStream(con.getOutputStream());
dop.writeBytes("take=wori");
dop.flush();
dop.close();
DataInputStream dop2=new DataInputStream(con.getInputStream());
System.out.println(dop2.readLine());
con.disconnect();
}catch(IOException e)
{
System.out.println(e.toString());
}
}
}