oYangGuo12345 2015-12-25 07:13 采纳率: 0%
浏览 1979

java socket 端口转发遇到的问题

下面的程序运行之后,没有办法通过8081端口连上数据库服务器,这是为什么呢

package mis.client;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.InterruptedIOException;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

import lcc.SysLog;

public class Client {

public static void main(String[] args) throws Exception {

    Socket toDb = new Socket("10.11.112.48", 1521);
    ServerSocket serverServer = new ServerSocket(8081);

    Socket toServer = serverServer.accept();

    InputStream toDbInStream = toDb.getInputStream();
    OutputStream toDbOutStream = toDb.getOutputStream();        


    InputStream toServerInStream = toServer.getInputStream();
    OutputStream toServerOutStream = toServer.getOutputStream();    

    System.out.println("客户端初始化完成");

    pipe(toDbInStream,toServerInStream,toServerOutStream,toDbOutStream);







}

private static void pipe(InputStream is0, InputStream is1, OutputStream os0,OutputStream os1) {
    try {
        int ir;
        byte bytes[] = new byte[1024];
        System.out.println(0);
        while (true) {
            try {
                if ((ir = is0.read(bytes)) > 0) {
                    System.out.println(1);
                    os0.write(bytes, 0, ir);
                } else if (ir < 0) {
                    break;
                }
            } catch (InterruptedIOException e) {
                System.out.println("error--1");
            }
            try {
                if ((ir = is1.read(bytes)) > 0) {
                    System.out.println(2);
                    os1.write(bytes, 0, ir);
                } else if (ir < 0) {
                    break;
                }
            } catch (InterruptedIOException e) {
                System.out.println("error--2");
            }

        }
    } catch (Exception e0) {
    }
}   

}
补充:我程序的意图是把目标服务器1521端口的的数据转发的本地8081端口上,然后我用plsql工具去连库,程序只负责转发数据,现在的情况是数据没有转发过来

  • 写回答

2条回答

  • LBL121520 2015-12-25 08:03
    关注

    如果你的程序只有这些,是注定连不上的,数据库连接你可以暂时用jdbc。而且你这里只有数据库的ip和端口号,没有数据库的用户名密码以及ssid,差太多东西,肯定连不上。

    评论

报告相同问题?

悬赏问题

  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题