Java的Unix Socket开发包 JUDS

码农软件 · 软件分类 · 网络工具包 · 2019-03-01 11:13:25

软件介绍

Java Unix Domain Sockets (JUDS) 提供了 Java 的方法用来访问 Unix domain sockets 套接字。

示例代码:

package com.google.code.juds.test;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import com.google.code.juds.*;

public class TestUnixDomainSocket {

        public static void main(String[] args) throws IOException {
                if (args.length != 1) {
                        System.out
                                        .println("usage: java TestUnixDomainSocket socketfilename");
                        System.exit(1);
                }
                String socketFile = args[0];

                byte[] b = new byte[128];
                // Testcase 1.1: Test UnixDomainSocketClient with a stream socket
                UnixDomainSocketClient socket = new UnixDomainSocketClient(socketFile,
                                UnixDomainSocket.SOCK_STREAM);
                InputStream in = socket.getInputStream();
                OutputStream out = socket.getOutputStream();
                in.read(b);
                System.out.println("Text received: \"" + new String(b) + "\"");
                String text = "[2] Hello! I'm the client!";
                out.write(text.getBytes());
                System.out.println("Text sent: " + "\"" + text + "\"");
                socket.close();

                // Testcase 1.2: Test UnixDomainSocketClient with a datagram socket
                socket = new UnixDomainSocketClient(socketFile,
                                UnixDomainSocket.SOCK_DGRAM);
                System.out.println("Provoke and catch an "
                                + "UnsupportedOperationException:");
                try {
                        in = socket.getInputStream();
                } catch (UnsupportedOperationException e) {
                        System.out.println("UnsupportedOperationException has been "
                                        + "thrown as expected.");
                }
                out = socket.getOutputStream();
                text = "[3] Hello! I'm the client!";
                out.write(text.getBytes());
                System.out.println("Text sent: \"" + text + "\"");
                socket.close();

                // Testcase 2.1: Test UnixDomainSocketServer with a stream socket
                System.out.println("\nTest #2: Test UnixDomainSocketServer\nTestcase "
                                + "2.1: Test UnixDomainSocketServer with a stream socket...");
                UnixDomainSocketServer ssocket = new UnixDomainSocketServer(socketFile,
                                UnixDomainSocket.SOCK_STREAM);
                in = ssocket.getInputStream();
                out = ssocket.getOutputStream();
                in.read(b);
                System.out.println("Text received: \"" + new String(b) + "\"");
                text = "[5] Hello! I'm the server!";
                out.write(text.getBytes());
                System.out.println("Text sent: " + "\"" + text + "\"");
                ssocket.close();
                ssocket.unlink();

                // Testcase 2.2: Test UnixDomainSocketServer with a datagram socket
                System.out.println("Testcase 2.2: Test UnixDomainSocketServer with "
                                + "a datagram socket...");
                ssocket = new UnixDomainSocketServer(socketFile,
                                UnixDomainSocket.SOCK_DGRAM);
                System.out.println("Provoke and catch an "
                                + "UnsupportedOperationException:");
                in = ssocket.getInputStream();
                try {
                        out = ssocket.getOutputStream();
                } catch (UnsupportedOperationException e) {
                        System.out.println("UnsupportedOperationException has been "
                                        + "thrown as expected.");
                }
                in.read(b);
                System.out.println("Text received: \"" + new String(b) + "\"");
                ssocket.close();
                ssocket.unlink();
        }
}

本文地址:https://www.codercto.com/soft/d/381.html

Modern PHP(中文版)

Modern PHP(中文版)

Josh Lockhart / 安道 / 中国电力出版社 / 2015-9 / 39

PHP正在重生,不过所有PHP在线教程都过时了,很难体现这一点。通过这本实用的指南,你会发现,借助面向对象、命名空间和不断增多的可重用的组件库,PHP已经成为一门功能完善的成熟语言。 本书作者Josh Lockhart是“PHP之道”的发起人,这是个受欢迎的新方案,鼓励开发者使用PHP最佳实践。Josh通过实践揭示了PHP语言的这些新特性。你会学到关于应用架构、规划、数据库、安全、测试、调试......一起来看看 《Modern PHP(中文版)》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

URL 编码/解码
URL 编码/解码

URL 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具