UrlConnetion.javajava
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.javaapache
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; } }