UrlConnetion.java
package org.apache.pre.util;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import org.apache.pre.entity.UserInfo;
public class UrlConnetion {
public static void go() throws Exception {
// 设置访问URL
URL url = new URL("http://localhost:8080/PRE/login");
// 封装Bean信息
UserInfo userInfo = new UserInfo("libo", "20320323");
// 获得Http连接
HttpURLConnection htpUrlConn = (HttpURLConnection) url.openConnection();
// 允许使用 URL 连接进行输入
htpUrlConn.setDoOutput(true);
// 允许使用 URL 连接进行输出
htpUrlConn.setDoInput(true);
// 设置HttpURLConnection请求头里面的属性
htpUrlConn.setRequestProperty("Content-Type", "multipart/form-data; boundary=Bounday---");
htpUrlConn.setRequestProperty("Cache-Control", "no-cache");
htpUrlConn.setRequestMethod("POST");
// 建立连接
htpUrlConn.connect();
// 获得Httpurl输出流
OutputStream outStrm = htpUrlConn.getOutputStream();
// 获得Object输出流
ObjectOutputStream objOutStrm = new ObjectOutputStream(outStrm);
// 写入内容
objOutStrm.writeObject(userInfo);
objOutStrm.flush();
objOutStrm.close();
// 获得服务器返回信息
BufferedReader reader = new BufferedReader(new InputStreamReader(
htpUrlConn.getInputStream()));
String line;
System.out.println("=============================");
System.out.println("Contents of post request");
System.out.println("=============================");
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
System.out.println("=============================");
System.out.println("Contents of post request ends");
System.out.println("=============================");
reader.close();
// 切断URL连接
htpUrlConn.disconnect();
}
public static void main(String[] args) throws Exception {
go();
}
}
LoginServlet.java
package org.apache.pre.servlet;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.pre.entity.UserInfo;
public class LoginServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = -107558670321083262L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException,
IOException {
// TODO Auto-generated method stub
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// 获取请求的输入流
ObjectInputStream in = new ObjectInputStream(req.getInputStream());
// 建立相应的输出流
ObjectOutputStream out = new ObjectOutputStream(resp.getOutputStream());
UserInfo userInfo = null;
try {
// 读取请求内容
userInfo = (UserInfo) in.readObject();
} catch (ClassNotFoundException e) {
out.writeObject("error");
out.close();
in.close();
}
System.out.println(userInfo.getUserName());
System.out.println(userInfo.getUserNumber());
out.writeObject("success");
out.close();
in.close();
}
}
UserInfo.java
package org.apache.pre.entity;
import java.io.Serializable;
public class UserInfo implements Serializable {
/**
*
*/
private static final long serialVersionUID = -7216595138720344258L;
private String userName;
private String userNumber;
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserNumber() {
return userNumber;
}
public void setUserNumber(String userNumber) {
this.userNumber = userNumber;
}
public UserInfo(String userName, String userNumber) {
super();
this.userName = userName;
this.userNumber = userNumber;
}
}