android如何向servlet传两个String类型数据再接收该servlet传回的数据完整代码
时间: 2024-03-25 13:41:25 浏览: 21
以下是一个完整的示例代码,其中将 `param1` 和 `param2` 作为 GET 请求的参数传递给 servlet,并接收 servlet 返回的结果:
```java
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
public class ServletClient {
public static String requestServlet(String param1, String param2) {
try {
// 构造 URL 对象
String urlString = "http://your.server.com/servlet";
String query = String.format("param1=%s¶m2=%s", URLEncoder.encode(param1, "UTF-8"), URLEncoder.encode(param2, "UTF-8"));
URL url = new URL(urlString + "?" + query);
// 打开连接并设置请求方法和头部信息
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
// 发送请求并获取返回结果
InputStream in = new BufferedInputStream(conn.getInputStream());
String response = readStream(in);
return response;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
private static String readStream(InputStream in) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
StringBuilder sb = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
sb.append(line);
}
reader.close();
return sb.toString();
}
}
```
在 servlet 中,可以通过 `request.getParameter("param1")` 和 `request.getParameter("param2")` 获取客户端传来的参数,并进行处理后返回结果。例如:
```java
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;
public class MyServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String param1 = request.getParameter("param1");
String param2 = request.getParameter("param2");
// 处理参数并返回结果
String result = handleRequest(param1, param2);
// 返回结果
response.setContentType("text/plain;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println(result);
out.close();
}
private String handleRequest(String param1, String param2) {
// 处理请求并返回结果
return "Hello, " + param1 + " and " + param2 + "!";
}
}
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)