如何用JAVA实现一个代理服务器

如何用JAVA实现一个代理服务器,第1张

试试:

Properties prop = SystemgetProperties();

propsetProperty("socksProxyHost", "1921680254");

propsetProperty("socksProxyPort", "8000");

就这么设置。在java命令行 也可以用 -DsocksProxyHost -DsocksProxyPort 来指定

如何用java 5分钟实现一个最简单的mysql代理服务器

首先,准备开发工具套件,我们并不会引入过多工具包,仅仅需要:

java8

vertx 3

如果你是用maven做为项目管理工具,请将vertx 3引入:

1

2

3

4

5

<dependency>

<groupId>iovertx</groupId>

<artifactId>vertx-core</artifactId>

<version>332</version>

</dependency>

代码实现:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

package

commaxleapmysqlproxy;

import

iovertxcoreAbstractVerticle;

import

iovertxcoreVertx;

import

iovertxcoreloggingLogger;

import

iovertxcoreloggingLoggerFactory;

import

iovertxcorenetNetClient;

import

iovertxcorenetNetServer;

import

iovertxcorenetNetSocket;

/

@author sneaky

@since 100

/

public

class

MysqlProxyServer

{

private

static

final

Logger

logger

=

LoggerFactorygetLogger(MysqlProxyServerclass);

public

static

void

main(String[]

args)

{

Vertxvertx()deployVerticle(new

MysqlProxyServerVerticle());

}

public

static

class

MysqlProxyServerVerticle

extends

AbstractVerticle

{

private

final

int

port

=

3306;

private

final

String

mysqlHost

=

"101006";

@Override

public

void

start()

throws

Exception

{

NetServer

netServer

=

vertxcreateNetServer();//创建代理服务器

NetClient

netClient

=

vertxcreateNetClient();//创建连接mysql客户端

netServerconnectHandler(socket

->

netClientconnect(port,

mysqlHost,

result

->

{

//响应来自客户端的连接请求,成功之后,在建立一个与目标mysql服务器的连接

if

(resultsucceeded())

{

//与目标mysql服务器成功连接连接之后,创造一个MysqlProxyConnection对象,并执行代理方法

new

MysqlProxyConnection(socket,

resultresult())proxy();

java >

使用代理需要导入:commons-logging-11jar,>

在连接代理时需要使用用户名和密码构造UsernamePasswordCredentials对象并作为参数传递给>

具体用法如下:

public static void main(String args[])

{

 StringBuffer sb = new StringBuffer();

 //创建>

以上就是关于如何用JAVA实现一个代理服务器全部的内容,包括:如何用JAVA实现一个代理服务器、java使用代理访问网络的几种方法、求教如何为Java NIO设置Socks代理等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9812751.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存