「java怎么套接web」java 原始套接字

博主:adminadmin 2022-12-27 19:48:12 76

本篇文章给大家谈谈java怎么套接web,以及java 原始套接字对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java如何调用webservice接口?

Java通过WSDL文件来调用webservice直接调用模式如下:

import java.util.Date;

import java.text.DateFormat;

import org.apache.axis.client.Call;

import org.apache.axis.client.Service;

import javax.xml.namespace.QName;

import java.lang.Integer;

import javax.xml.rpc.ParameterMode;

public class caClient {

public static void main(String[] args) {

try {

String endpoint = "";

//直接引用远程的wsdl文件

//以下都是套路

Service service = new Service();

Call call = (Call) service.createCall();

call.setTargetEndpointAddress(endpoint);

call.setOperationName("addUser");//WSDL里面描述的接口名称

call.addParameter("userName", org.apache.axis.encoding.XMLType.XSD_DATE,

javax.xml.rpc.ParameterMode.IN);//接口的参数

call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);//设置返回类型

String temp = "测试人员";

String result = (String)call.invoke(new Object[]{temp});

//给方法传递参数,并且调用方法

System.out.println("result is "+result);

}

catch (Exception e) {

System.err.println(e.toString());

}

}

}

java调用webservice接口具体怎么调用

使用HttpClient

用到的jar文件:commons-httpclient-3.1.jar

方法:

预先定义好Soap请求数据,可以借助于XMLSpy Professional软件来做这一步生成。

String soapRequestData = "?xml version=\"1.0\" encoding=\"utf-8\"?" +

"soap12:Envelope xmlns:xsi=\"\" xmlns:xsd=\"\" xmlns:soap12=\"\"" +

"soap12:Body" +

" getCountryCityByIp xmlns=\"\"" +

" theIpAddress219.137.167.157/theIpAddress" +

" /getCountryCityByIp" +

" /soap12:Body" +

"/soap12:Envelope";

然后定义一个PostMethod,这时需要指定web服务的Url;

PostMethod postMethod = new PostMethod(“”);

然后把Soap请求数据添加到PostMethod中

byte[] b = soapRequestData.getBytes("utf-8");

InputStream is = new ByteArrayInputStream(b,0,b.length);

RequestEntity re = new InputStreamRequestEntity(is,b.length,"application/soap+xml; charset=utf-8");

postMethod.setRequestEntity(re);

最后生成一个HttpClient对象,并发出postMethod请求

HttpClient httpClient = new HttpClient();

statusCode = httpClient.executeMethod(postMethod);

String soapRequestData = postMethod.getResponseBodyAsString();

soapRequestData就是调用web服务的Soap响应数据,是xml格式的,可以通过解析soapRequestData来获得调用web服务的返回值。

如何搭建java web服务器

1.由于服务器配置比较低综合考虑,选择ubuntu系统进行搭建

2. 登陆阿里云服务器:

方法一:使用xshell软件登陆服务器

主机填写ip地址

端口号选择22

连接登陆服务器

方法二:使用阿里云管理终端

ssh root@服务器ip地址

password:输入密码

3.如何上传文件

方法一:windows和linux上传或下载某个文件可以使用rz,sz

sudo apt-get install lrzsz

安装完成后进入准备存放改文件的文件夹输入rz,就会跳出文件选择框

例如:#cd apache-tomcat-7.0.69/bin  rz

cd后有空格

cd ~:返回最上层

cd ..:返回上一层

cd -:返回最近操作

方法二:使用xshell中的插件Xftp

4.安装及配置环境

安装lsb指令

ubunu快捷安装需要的命令,更新一下:

自带源在大陆不好,更新即可解决

1.sudo apt-get update  

2.apt-get install yum  yum install -y redhat-lsb

输入lsb指令查看当前版本

查看版本号

lsb_release -a查看当前位数

getconf LONG_BIT

安装jdk:

方法一:ubuntu自动安装jdk

sudo apt-get install jdk

安装完成后配置环境:

使用vim指定编辑etc目录下profile文件,添加export

#vim /etc/profile

添加进profile文件

JAVA_HOME=/home/java/jdk1.6.0_12

export JRE_HOME=/home/liujicheng/java/jdk1.6.0_12/jre

export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

//java存放位置请自行更改

//使用 which java 查看jdk所在文件夹

方法二:本地下载jdk上传

下载对应系统32位或64位的tar.gz文件

建议:经过还几次对服务器进行环境搭建,已经有了一点小小的见解,建议不要使用过低版本的JDK,例如服务器JDK版本为1.5而项目JDK版本为1.8的情况,就会出现无法服务器无法运行.war文件的情况,建议版本为1.7

上传tar.gz文件有两种方法

1

1.输入命令行 rz 选择安装包上传

1

使用rz时,注意安装 2.通过xftp将上传

创建一个java文件夹

mkdir java

输入安装命令,将上传的.tar.gz文件解压到创建为java文件夹中

sudo tar -zxvf jdk-7u80-linux-x64.tar.gz -C /root/java

设置环境变量

使用vim指定编辑etc目录下profile文件,添加export

#vim /etc/profile添加进profile文件

JAVA_HOME=/root/java/jdk1.7.0_80

export JRE_HOME=/root/java/jdk1.7.0_80/jre

export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

//java存放位置请自行更改//使用 which java 查看jdk所在文件夹

选择E,然后输入i 进行写操作

最后 :x退出并保存

设置默认JDK

12345

sudo update-alternatives --install /usr/bin/java java /root/java/jdk1.7.0_80/bin/java 300 sudo update-alternatives --install /usr/bin/javac javac /root/java/jdk1.7.0_80/bin/javac 300 sudo update-alternatives --install /usr/bin/jar jar /root/java/jdk1.7.0_80/bin/jar 300  sudo update-alternatives --install /usr/bin/javah javah /root/java/jdk1.7.0_80/bin/javah 300  sudo update-alternatives --install /usr/bin/javap javap /root/java/jdk1.7.0_80/bin/javap 300

如果之后一个版本显示: 

There is only one alternative in link group java (providing /usr/bin/java):

/usr/lib/jvm/jdk1.7.0_60/bin/java

否者,选择合适的jdk

检查jdk是否安装成功,输出版本号及对应信息即安装成功

#java

#javac

#java -version

安装tomcat

方法一:ubuntu自动安装tomcat

sudo apt-get install tomcat

添加jdk和jre环境变量

JAVA_HOME=/home/java/jdk1.6.0_12

JRE_HOME=/home/homer/eclipse/jdk1.6.0_12/jre  

PATH=$JAVA_HOME/bin:$JRE_HOME:$PATH  

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar  

TOMCAT_HOME=/opt/apache-tomcat-7.0.29  

启动tomcat

cd apache-tomcat-7.0.69/bin ./startup.sh

出现提示说明配置成功

方法二:上传tomcat并解压

通过上述上传文件方法上传后

使用tar指令解压

tar -zxvf apache-tomcat-8.0.24.tar.gz

然后进入apache-tomcat-7.0.69文件夹

# cd apache-tomcat-8.0.24 /bin/

启动tomcat

cd apache-tomcat-8.0.24 /bin/ ./startup.sh

显示如下说明成功

最后输入:   (x代表ip地址),显示tomcat首页说明配置成功

安装Mysql

ubuntu下自动安装

sudo apt-get install mysql-server

apt-get install mysql-client

sudo apt-get install libmysqlclient-dev

设置数据库密码:

检查Mysql是否安装成功

sudo netstat -tap | grep mysql

登陆Mysql

mysql -uroot -p密码

成功:

查看数据库

show databases

将.sql文件导入

//先选定数据库

use iswust        

source /root/test.sql//source /文件夹/sql文件名

select * from score

5.java工程打包上传并运行

右键选中java项目,WAR Export 将文件以war格式导出

(注意:java工程的jdk一定要先降低到与服务器的jdk版本相同,例如java工程为1.8而服务器为1.6则会报错)

降低jdk方法:

并通过XFTP或上述的上传文件方法,上传至apache-tomcat-7.0.69/webapps中

java 如何实现webservice 怎么调用接口

一、利用jdk web服务api实现,这里使用基于SOAP message的Web服务 

 ①.首先建立一个Web services EndPoint:package Hello;

 import javax.jws.WebService;

 import javax.jws.WebMethod;

 import javax.xml.ws.Endpoint;

@WebService

 public class Hello {

@WebMethod

 public String hello(String name) {

 return "Hello, " + name + "\n";

 }

public static void main(String[] args) {

// create and publish an endpoint

Hello hello = new Hello();

Endpoint endpoint = Endpoint.publish("

, hello);

 }

 }

 ②.使用apt编译Hello.java(例:apt -d [存放编译后的文件目录] Hello.java ) ,

会生成jaws目录

 ③.使用java Hello.Hello运行,然后将浏览器指向

就会出现下列显示

 ④.使用wsimport生成客户端使用如下:

wsimport -p . -keep 

这时,会在当前目录中生成如下文件:

 ⑤.客户端程序:

1 class HelloClient{

2 public static void main(String args[]) {

3 HelloService service = new HelloService();

4 Hello helloProxy = service.getHelloPort();

5 String hello = helloProxy.hello("你好");

6 System.out.println(hello);

7 }

8 }

以上方法还稍显繁琐,还有更加简单的方法

二、使用xfire,我这里使用的是myeclipse集成的xfire进行测试的利用xfire开发WebService,可以有三种方法:

 1. 一种是从javabean中生成;

 2. 一种是从wsdl文件中生成;

 3. 还有一种是自己建立webservice

步骤如下:

用myeclipse建立webservice工程,目录结构如下:首先建立webservice接口,

代码如下:

    1 package com.myeclipse.wsExample;

2 //Generated by MyEclipse

3

4 public interface IHelloWorldService {

5

    6 public String example(String message);

7

8 }

接着实现这个借口:

    1 package com.myeclipse.wsExample;

2 //Generated by MyEclipse

3

4 public class HelloWorldServiceImpl implements IHelloWorldService {

5

6 public String example(String message) {

7 return message;

8 }

9

10 }

 

修改 service.xml文件,加入以下代码:

1 service

2 nameHelloWorldService/name

3 serviceClass

4 com.myeclipse.wsExample.IHelloWorldService

5 /serviceClass

6 implementationClass

7 com.myeclipse.wsExample.HelloWorldServiceImpl

8 /implementationClass

9  stylewrapped/style

10 useliteral/use

11 scopeapplication/scope

12/service

把整个项目部署到tomcat服务器中打开浏览器,输入,可以看到如下:

然后再展开HelloWorldService后面的wsdl可以看到:

 客户端实现如下:

   1 package com.myeclipse.wsExample.client;

2

3 import java.net.MalformedURLException;

4 import java.net.URL;

5

6 import org.codehaus.xfire.XFireFactory;

7 import org.codehaus.xfire.client.Client;

8 import org.codehaus.xfire.client.XFireProxyFactory;

9 import org.codehaus.xfire.service.Service;

   10 import org.codehaus.xfire.service.binding.ObjectServiceFactory;

11

12 import com.myeclipse.wsExample.IHelloWorldService;

13

14 public class HelloWorldClient {

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

16 // TODO Auto-generated method stub

17 Service s=new ObjectServiceFactory().create(IHelloWorldService.class);

18 XFireProxyFactory xf=new XFireProxyFactory(XFireFactory.newInstance().getXFire());

19 String url="

20

21 try

22 {

23

    24 IHelloWorldService hs=(IHelloWorldService) xf.create(s,url);

25 String st=hs.example("zhangjin");

26 System.out.print(st);

27 }

28 catch(Exception e)

29 {

30 e.printStackTrace();

31 }

32 }

33

34 }

  有时候我们知道一个wsdl地址,比如想用java客户端引用net做得webservice,使用myeclipse引用,但是却出现无法通过验证的错误,这时我们可以直接在类中引用,步骤如下:

1. public static void main(String[] args) throws MalformedURLException, Exception {

2. // TODO Auto-generated method stub

如何用Java实现Web服务器

一 HTTP协议的作用原理

WWW是以Internet作为传输媒介的一个应用系统 WWW网上最基本的传输单位是Web网页 WWW的工作基于客户机/服务器计算模型 由Web 浏览器(客户机)和Web服务器(服务器)构成 两者之间采用超文本传送协议(HTTP)进行通信 HTTP协议是基于TCP/IP协议之上的协议 是Web浏览器和Web服务器之间的应用层协议 是通用的 无状态的 面向对象的协议 HTTP协议的作用原理包括四个步骤

( ) 连接 Web浏览器与Web服务器建立连接 打开一个称为socket(套接字)的虚拟文件 此文件的建立标志着连接建立成功

( ) 请求 Web浏览器通过socket向Web服务器提交请求 HTTP的请求一般是GET或POST命令(POST用于FORM参数的传递) GET命令的格式为

GET 路径/文件名 HTTP/

文件名指出所访问的文件 HTTP/ 指出Web浏览器使用的HTTP版本

( ) 应答 Web浏览器提交请求后 通过HTTP协议传送给Web服务器 Web服务器接到后 进行事务处理 处理结果又通过HTTP传回给Web浏览器 从而在Web浏览器上显示出所请求的页面

例 假设客户机与 /mydir/l建立了连接 就会发送GET命令 GET /mydir/l HTTP/ 主机名为的Web服务器从它的文档空间中搜索子目录mydir的文件l 如果找到该文件 Web服务器把该文件内容传送给相应的Web浏览器

为了告知 Web浏览器传送内容的类型 Web服务器首先传送一些HTTP头信息 然后传送具体内容(即HTTP体信息) HTTP头信息和HTTP体信息之间用一个空行分开

常用的HTTP头信息有

① HTTP OK

这是Web服务器应答的第一行 列出服务器正在运行的HTTP版本号和应答代码 代码 OK 表示请求完成

② MIME_Version

它指示MIME类型的版本

③ content_type 类型

这个头信息非常重要 它指示HTTP体信息的MIME类型 如 content_type text/指示传送的数据是HTML文档

④ content_length 长度值

它指示HTTP体信息的长度(字节)

( ) 关闭连接 当应答结束后 Web浏览器与Web服务器必须断开 以保证其它Web浏览器能够与Web服务器建立连接

二 Java实现Web服务器功能的程序设计

根据上述HTTP协议的作用原理 实现GET请求的Web服务器程序的方法如下

( ) 创建ServerSocket类对象 监听端口 这是为了区别于HTTP的标准TCP/IP端口 而取的

( ) 等待 接受客户机连接到端口 得到与客户机连接的socket

( ) 创建与socket字相关联的输入流instream和输出流outstream

( ) 从与socket关联的输入流instream中读取一行客户机提交的请求信息 请求信息的格式为 GET 路径/文件名 HTTP/

( ) 从请求信息中获取请求类型 如果请求类型是GET 则从请求信息中获取所访问的HTML文件名 没有HTML文件名时 则以l作为文件名

( ) 如果HTML文件存在 则打开HTML文件 把HTTP头信息和HTML文件内容通过socket传回给Web浏览器 然后关闭文件 否则发送错误信息给Web浏览器

( ) 关闭与相应Web浏览器连接的socket字

下面的程序是根据上述方法编写的 可实现多线程的Web服务器 以保证多个客户机能同时与该Web服务器连接

程序 WebServer java文件

//WebServer java 用JAVA编写Web服务器

import java io *

import *

public class WebServer {

public static void main(String args[]) {

int i= PORT=

ServerSocket server=null

Socket client=null

try {

server=new ServerSocket(PORT)

System out println( Web Server is listening on port +server getLocalPort())

for ( ) {client=server accept() //接受客户机的连接请求

new ConnectionThread(client i) start()

i++

}

} catch (Exception e) {System out println(e) }

}

}

/* ConnnectionThread类完成与一个Web浏览器的通信 */

class ConnectionThread extends Thread {

Socket client //连接Web浏览器的socket字

int counter //计数器

public ConnectionThread(Socket cl int c) {

client=cl

counter=c

}

public void run() //线程体

{try {

String destIP=client getInetAddress() toString() //客户机IP地址

int destport=client getPort() //客户机端口号

System out println( Connection +counter+ connected to +destIP+ on port +destport+ )

PrintStream outstream=new PrintStream(client getOutputStream())

DataInputStream instream=new DataInputStream(client getInputStream())

String inline=instream readLine() //读取Web浏览器提交的请求信息

System out println( Received +inline)

if (getrequest(inline)) { //如果是GET请求

String filename=getfilename(inline)

File file=new File(filename)

if (file exists()) { //若文件存在 则将文件送给Web浏览器

System out println(filename+ requested )

outstream println( HTTP/ OK )

outstream println( MIME_version )

outstream println( Content_Type text/ )

int len=(int)file length()

outstream println( Content_Length +len)

outstream println( )

sendfile(outstream file) //发送文件

outstream flush()

} else { //文件不存在时

String notfound=

Error file not found

outstream println( HTTP/ no found )

outstream println( Content_Type text/ )

outstream println( Content_Length +notfound length()+ )

outstream println( )

outstream println(notfound)

outstream flush()

}

}

long m =

while (m ) {m ++ } //延时

client close()

} catch (IOException e) {

System out println( Exception +e)

}

}

/* 获取请求类型是否为 GET */

boolean getrequest(String s) {

if (s length() )

{if (s substring( ) equalsIgnoreCase( GET )) return true

}

return false

}

/* 获取要访问的文件名 */

String getfilename(String s) {

String f=s substring(s indexOf(′ ′)+ )

f=f substring( f indexOf(′ ′))

try {

if (f charAt( )==′/′)

f=f substring( )

} catch (StringIndexOutOfBoundsException e) {

System out println( Exception +e)

}

if (f equals( )) f= l

return f

}

/*把指定文件发送给Web浏览器 */

void sendfile(PrintStream outs File file) {

try {

DataInputStream in=new DataInputStream(new FileInputStream(file))

int len=(int)file length()

byte buf[]=new byte[len]

in readFully(buf)

outs write(buf len)

outs flush()

in close()

} catch (Exception e) {

System out println( Error retrieving file )

System exit( )

}

}

}

程序中的ConnectionThread线程子类用来分析一个Web浏览器提交的请求 并将应答信息传回给Web浏览器 其中 getrequest()方法用来检测客户的请求是否为 GET getfilename(s)方法是从客户请求信息s中获取要访问的HTML文件名 sendfile()方法把指定文件内容通过socket传回给Web浏览器

对上述程序的getrequest()方法和相关部分作修改 也能对POST请求进行处理

三 运行实例

为了测试上述程序的正确性 将编译后的WebServer class ConnectionThread class和下面的l文件置于网络的某台主机的同一目录中(如 主机NT SRV的C JWEB目录)

程序 l文件

这是用JAVA写出的WEB服务器主页

年 月 日

首先在该主机上用java命令运行WebServer class

C jwebjava webserver

然后在客户机运行浏览器软件 在URL处输入WebServer程序所属的URL地址(如 ) 就在浏览器窗口显示出指定的HTML文档

注意 不能缺省端口号 如缺省 则运行该主机的正常WEB服务器

lishixinzhi/Article/program/Java/hx/201311/26626

java如何调用webservice接口

Java调用WebService可以直接使用Apache提供的axis.jar自己编写代码,或者利用Eclipse自动生成WebService Client代码,利用其中的Proxy类进行调用。理论上是一样的,只不过用Eclipse自动生成代码省事些。

1、编写代码方式:

package com.yudun.test;

import java.rmi.RemoteException;

import org.apache.axis.client.Call;

import org.apache.axis.client.Service;

import org.apache.axis.message.PrefixedQName;

import org.apache.axis.message.SOAPHeaderElement;

import com.cezanne.golden.user.Exception;

import com.cezanne.golden.user.UserManagerServiceProxy;

import javax.xml.namespace.QName;

import java.net.MalformedURLException;

import javax.xml.rpc.ServiceException;

import javax.xml.soap.Name;

import javax.xml.soap.SOAPException;

public class testWebService {

public static String getResult() throws ServiceException, MalformedURLException, RemoteException, SOAPException

{

//标识Web Service的具体路径

String endpoint = "WebService服务地址";

// 创建 Service实例

Service service = new Service();

// 通过Service实例创建Call的实例

Call call = (Call) service.createCall();

//将Web Service的服务路径加入到call实例之中.

call.setTargetEndpointAddress( new java.net.URL(endpoint) );//为Call设置服务的位置

// 由于需要认证,故需要设置调用的SOAP头信息。

Name headerName = new PrefixedQName( new QName("发布的wsdl里的targetNamespace里的url", "string_itemName") );

org.apache.axis.message.SOAPHeaderElement header = new SOAPHeaderElement(headerName);

header.addTextNode( "blablabla" );

call.addHeader(header);

// SOAPHeaderElement soapHeaderElement = new SOAPHeaderElement("发布的wsdl里的targetNamespace里的url", "SoapHeader");

// soapHeaderElement.setNamespaceURI("发布的wsdl里的targetNamespace里的url");

// try

// {

// soapHeaderElement.addChildElement("string_itemName").setValue("blablabla");

// }

// catch (SOAPException e)

// {

// e.printStackTrace();

// }

// call.addHeader(soapHeaderElement);

//调用Web Service的方法

org.apache.axis.description.OperationDesc oper;

org.apache.axis.description.ParameterDesc param;

oper = new org.apache.axis.description.OperationDesc();

oper.setName("opName");

param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "arg0"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("", "string"), java.lang.String.class, false, false);

param.setOmittable(true);

oper.addParameter(param);

param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "arg1"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("", "string"), java.lang.String.class, false, false);

param.setOmittable(true);

oper.addParameter(param);

param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "arg2"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("", "string"), java.lang.String.class, false, false);

param.setOmittable(true);

oper.addParameter(param);

oper.setReturnType(new javax.xml.namespace.QName("", "string"));

oper.setReturnClass(java.lang.String.class);

oper.setReturnQName(new javax.xml.namespace.QName("", "return"));

oper.setStyle(org.apache.axis.constants.Style.WRAPPED);

oper.setUse(org.apache.axis.constants.Use.LITERAL);

oper.addFault(new org.apache.axis.description.FaultDesc(

new javax.xml.namespace.QName("发布的wsdl里的targetNamespace里的url", "Exception"),

"Exception",

new javax.xml.namespace.QName("发布的wsdl里的targetNamespace里的url", "Exception"),

true

));

call.setOperation( oper );

call.setOperationName(new javax.xml.namespace.QName("发布的wsdl里的targetNamespace里的url", "opName"));

//调用Web Service,传入参数

String res = ( String ) call.invoke( new Object[]("arg0","arg1"));

System.out.println("===============");

return res;

}

/**

* @param args

*/

public static void main(String[] args) {

try {

System.out.println(getResult());

} catch (MalformedURLException e) {

e.printStackTrace();

} catch (RemoteException e) {

e.printStackTrace();

} catch (ServiceException e) {

e.printStackTrace();

} catch (SOAPException e) {

e.printStackTrace();

}

}

}

2、利用Eclipse自动生成WebService client代码就容易多了:(由于还不会发图片,就用语言描述了,大家酬和看吧。。。)

首先,new project,选择other,在输入框中输入Web Service Client,选中搜索后的结果,点击Next,在Service definition中输入 WebService的发布地址,点击Finish

这样,WebService Client代码已经生成好了。

接下来写一个Test类,在main函数中输入如下代码:

String endpoint = "服务器的WebService的地址";

YourWebServiceNameProxy umsp = new YourWebServiceNameProxy (endpoint);

try {

String resultStr = umsp.opMethod("arg0","arg1");

System.out.println(resultStr);

} catch (Exception e) {

System.out.println("异常");

e.printStackTrace();

} catch (RemoteException e) {

System.out.println("RemoteException异常");

e.printStackTrace();

}

如果还有疑问的话还有视频,如果对你有帮助请采纳!

java怎么套接web的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java 原始套接字、java怎么套接web的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-27,除非注明,否则均为首码项目网原创文章,转载请注明出处。