「java的服务器客户端」java 服务器

博主:adminadmin 2023-01-27 03:30:08 411

今天给各位分享java的服务器客户端的知识,其中也会对java 服务器进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java客户端与服务器端

没有描述清楚。按照字面理解,服务端根据客户端发送的信息判断是否发送文件是吗?服务器端根据客户端请求的信息,如果要返回文件,服务器端读取文件向客户端写文件,比如读取文件向客户端写字节流。客户端肯定是不能直接访问服务器端文件的。如果文件是放在可以公开访问的地址,返回地址,客户端下载就是了。所以你的问题没有描述清楚。

JAVA的服务器和客户端怎么做

楼上的太长了吧,我写个简单的

import java.net.*;

import java.io.*;

import java.util.*;

/**

* TCP协议下单向通信的客户端程序。

* @author new

*

*/

public class TCPClientA {

public static void main(String[] args) {

Socket s=null;

try {

s=new Socket("127.0.0.1",8888);

BufferedReader br=new BufferedReader(new InputStreamReader(s.getInputStream()));

String str=br.readLine();

System.out.println(str);

} catch (Exception e) {

e.printStackTrace();

}finally{

if(s!=null)try{s.close();}catch(IOException e){}

}

}

}

================================

import java.net.*;

import java.io.*;

import java.util.*;

/**

* TCP协议下单向通信的服务器端程序。

* @author new

*

*/

public class TCPServerA {

public static void main(String[] args) {

ServerSocket ss=null;

Socket s=null;

PrintStream ps=null;

try {

ss=new ServerSocket(8888);

while(true){

System.out.println("服务器已启动,在8888端口:");

s=ss.accept();

System.out.println("得到 "+s.getInetAddress()+" 的连接请求...");

ps=new PrintStream(s.getOutputStream());

ps.println(new Date());

ps.flush();

System.out.println("已向客户端发送数据!");

}

} catch (IOException e) {

e.printStackTrace();

}finally{

if(ps!=null)ps.close();

if(s!=null)try{s.close();}catch(IOException e){}

if(ss!=null)try{ss.close();}catch(IOException e){}

}

}

}

java网络编程应该怎样在客户端和服务器间实现通信?

以前写的,照贴了。。。服务器端:import java.awt.*;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import java.io.*;

import java.net.*;/*6、 采用UDP协议,编写一个Java网络应用程序,该应用分服务器端程序和客户端程序两部分。

* 客户端指定一个服务器上的文件名,让服务器发回该文件的内容,或者提示文件不存在。

* (20分)(服务端程序和客户端程序分别命名为Server.java和Client.java)*/

public class N4BT6 extends Frame

{

DatagramSocket socket ;

DatagramPacket packet ;byte[] buf ;

File file ;

FileInputStream input;

String message = "该文件不存在";

TextArea text;

public N4BT6(String title)

{

super(title);

text = new TextArea(6,4);

add(text);

setSize(400, 300);

setVisible(true);

addWindowListener(new WindowAdapter()

{

public void windowClosing(WindowEvent e)

{

dispose();

}

});

buf = new byte[1024];

try

{

socket = new DatagramSocket(1230);

packet = new DatagramPacket(buf, buf.length);

socket.receive(packet);

file = new File(new String(packet.getData()));

socket = new DatagramSocket();

}

catch (Exception e)

{e.printStackTrace();

}

if(file.exists())

{

try

{

buf = new byte[(int)file.length()];

packet = new DatagramPacket(buf,buf.length,InetAddress.getLocalHost(),1234);

input = new FileInputStream(file);

input.read(buf);

socket.send(packet);

}

catch (IOException e)

{

e.printStackTrace();

}

}

else

{

try

{

packet = new DatagramPacket(message.getBytes(),message.getBytes().length,

InetAddress.getLocalHost(),1234);

socket.send(packet);

}

catch (Exception e)

{

e.printStackTrace();

}

}

}

public static void main(String[] args)

{

new N4BT6("Server");

}

}

客户端:import java.awt.*;

import java.awt.event.*;

import java.net.DatagramPacket;

import java.net.DatagramSocket;

import java.net.InetAddress;public class N4BT6_2 extends Frame

{

TextArea text;

String message = "Q.txt";

DatagramSocket socket ;

DatagramPacket packet;

byte[] buf;

public N4BT6_2(String title)

{

super(title);

text = new TextArea(6,4);

add(text);

setSize(400, 300);

setVisible(true);

addWindowListener(new WindowAdapter()

{

public void windowClosing(WindowEvent e)

{

dispose();

}

});

try

{

socket = new DatagramSocket();

packet = new DatagramPacket(message.getBytes(),message.getBytes().length,

InetAddress.getLocalHost(),1230);

socket.send(packet);

}

catch (Exception e)

{

e.printStackTrace();

}

try

{

buf = new byte[1024];

socket = new DatagramSocket(1234);

packet = new DatagramPacket(buf,buf.length);

socket.receive(packet);

text.append(new String(buf));

}

catch (Exception e)

{

e.printStackTrace();

}

}

public static void main(String[] args)

{

new N4BT6_2("Client");

}

}

JAVA服务器与客户端的socket通信问题

你可以在每个用户连上服务器端时,都发送一个消息,就是用4个字节表示是用户的ID,并将与用户通信的socket,用一个HashMap存储起来,而不是用LinkList。

后面如果A发送消息给C,就把A的前四个字节(即ID)取出来,在HashMap中找到与C通信的socket,然后把消息通过socket发送出去····

这部分代码应该很容易实现的,Socket通信这东西,理清了思路就很好弄了~~

关于java的服务器客户端和java 服务器的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。