memcached 客户端代码 Java memcached client学习2(socket如何建立))
时间: 2024-01-21 08:17:00 浏览: 102
在使用Java memcached client的过程中,建立与memcached服务端的socket连接是必不可少的一步。下面简单介绍一下如何建立socket连接。
1. 创建Socket对象
在Java中,我们可以通过创建Socket对象来建立与memcached服务端的连接。代码如下:
```java
Socket socket = new Socket("localhost", 11211);
```
其中,`localhost`表示memcached服务端所在的主机名或IP地址,`11211`表示memcached服务端监听的端口号。
2. 获取输入输出流
连接建立之后,我们需要获取套接字的输入输出流以便进行数据的读写操作。代码如下:
```java
InputStream inputStream = socket.getInputStream();
OutputStream outputStream = socket.getOutputStream();
```
3. 发送请求
建立连接并获取输入输出流之后,我们就可以向memcached服务端发送请求了。在memcached中,请求的格式通常是一个命令字(比如`get`、`set`等)以及相应的参数。代码如下:
```java
String command = "get mykey\r\n";
byte[] request = command.getBytes();
outputStream.write(request);
```
其中,`\r\n`表示回车换行,用来告诉memcached服务端一条命令的结束。
4. 接收响应
发送请求之后,我们需要等待memcached服务端的响应。在Java中,我们可以通过输入流来读取服务端返回的数据。代码如下:
```java
byte[] buffer = new byte[1024];
int len = inputStream.read(buffer);
if (len > 0) {
String response = new String(buffer, 0, len);
System.out.println(response);
}
```
其中,`1024`表示读取数据时使用的缓冲区大小,`len`表示实际读取的数据长度,`response`表示服务端返回的字符串。
5. 关闭连接
最后,我们需要在使用完套接字之后关闭它以释放资源。代码如下:
```java
socket.close();
```
完整示例代码如下:
```java
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
public class MemcachedClientDemo {
public static void main(String[] args) throws Exception {
Socket socket = new Socket("localhost", 11211);
InputStream inputStream = socket.getInputStream();
OutputStream outputStream = socket.getOutputStream();
String command = "get mykey\r\n";
byte[] request = command.getBytes();
outputStream.write(request);
byte[] buffer = new byte[1024];
int len = inputStream.read(buffer);
if (len > 0) {
String response = new String(buffer, 0, len);
System.out.println(response);
}
socket.close();
}
}
```
以上就是如何在Java中建立与memcached服务端的socket连接的简单介绍。
阅读全文