Java施用URLConnection写入和读取数据

Java使用URLConnection写入和读取数据
通过应用程序使用URLConnection访问Servlet(该Servlet的功能为将InputStream传入的字符串转换为大写字字母并重新写入OutputStream),将字符串数据写入OutputStream传入Servlet中,并通过InputStream获取Servlet的返回结果。



应用程序代码:

  URL url = new URL("http://localhost:8080/URLConnection/servlet/Receive");

  HttpURLConnection httpURLConnection = (HttpURLConnection) url
    .openConnection();
  httpURLConnection.setDoOutput(true);
  httpURLConnection.setRequestMethod("POST");
  httpURLConnection.setRequestProperty("Content-Type", "text/xml");

  OutputStream outputStream = httpURLConnection.getOutputStream();

  BufferedWriter bufferedWriter = new BufferedWriter(
    new OutputStreamWriter(outputStream));
 
  StringBuffer stringBuffer = new StringBuffer();
  stringBuffer.append("wlnmyr is very nice");
  stringBuffer.append("myr is a good man");
 
  bufferedWriter.write(stringBuffer.toString());
  bufferedWriter.flush();
  bufferedWriter.close();

  InputStream inputStream = httpURLConnection.getInputStream();

  BufferedReader bufferedReader = new BufferedReader(
    new InputStreamReader(inputStream));

  String line = null;

  while ((line = bufferedReader.readLine()) != null) {

   System.out.println(line);
  }





Servlet代码:

  ServletInputStream in = request.getInputStream();

  BufferedReader bufferedReader = new BufferedReader(
    new InputStreamReader(in));

  String line = null;
 
  StringBuffer stringBuffer = new StringBuffer();

  while ((line = bufferedReader.readLine()) != null) {
  
   stringBuffer.append(line.toUpperCase());
  
  }

  ServletOutputStream out = response.getOutputStream();
 
  BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(out));
  bufferedWriter.write(stringBuffer.toString());
  bufferedWriter.flush();
  bufferedWriter.close();

注意:首先布署Servlet,开户服务器,然后运行应用程序。