導航:首頁 > IDC知識 > 客戶端java伺服器端

客戶端java伺服器端

發布時間:2021-03-26 07:23:37

1、Java用來編寫客戶端還是伺服器端?

兩者都可以...不過java的垃圾回收機制因為是自動的所以執行客戶端程序的時候效率特別慢...一般用於伺服器端或WEB開發...學java的重點就是以j2ee技術為核心的。想寫客戶端之類的用C語言是最佳的..不過內存處理機制全部自己編寫..難度不是一般的高。

2、在java中怎麼將一組數據從客戶端發送到伺服器端???

1 伺服器端的技術是不是Java?
2 如果是Java,請使用ObjectOutputStream將實現了serializable介面的Java對象,發送到伺服器,伺服器使用ObjectInputStream流讀取,不過他們需要包裝SocketOutputStream和SocketInputStream
3 如果伺服器是其他技術,請使用WebService技術!
祝你好運!

3、Java中客戶端與伺服器之間怎樣連接?

public class SocketClient extends Thread {
private Socket socket;
private int port = 10020;
private String hostIp = "127.0.0.9";
public SocketClient(byte[] b){
try {
BufferedReader in = null;
PrintWriter out = null;

socket = new Socket(hostIp, port);
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out = new PrintWriter(socket.getOutputStream(), true);
System.out.println(Arrays.toString(b));
out.println(Arrays.toString(b)); //發送到服務端
System.out.println("Back回客戶的數據 message from server:[" + in.readLine() + "]");
out.close();
in.close();
socket.close();
} catch (Exception e) {
e.printStackTrace();
}
} //這是客戶連服務端,,
}

//這是服務端
public class SocketServer {
private ServerSocket serverSocket;
private Socket socket;
private int port = 10020;
private ExecutorService executeService = Executors.newFixedThreadPool(10); //線程池
public SocketServer(){
try {
serverSocket = new ServerSocket(port);
System.out.println("SocketServer have been started.[" + serverSocket + "]");
while(true){
socket = serverSocket.accept();

executeService.submit(new Runnable(){
public void run(){
try{
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);

String s1 = in.readLine();
System.out.println("Server Received:[" + s1 + "]"); //輸出
out.println("Server Received:[" + s1 + "]"); //放回到客戶端的
out.close();
in.close();
}catch (Exception e) {
}finally{
try {
System.out.println("關閉連接");
socket.close();
} catch (IOException e) {
System.out.println("close socket error.");
e.printStackTrace();
}
}
}
});
}
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
if(null != serverSocket){
serverSocket.close();
System.out.println("連接池關閉 ");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

}

4、java寫的客戶端怎麼和伺服器端通信

寫個簡單點的伺服器跟客服端就行了我寫了個很簡單的,只能在一個客戶端跟一個伺服器通信,在控制台輸入下面這個是伺服器import java.io.*;
import java.net.*;
import java.util.Scanner;public class Server
{
public static void main(String[] args)
{
try {
ServerSocket server=new ServerSocket(8888);//定義客戶端的埠號
Socket client=server.accept();//定義一個Socket對象

InputStream is=client.getInputStream();//伺服器接受信息輸入流,也就是接受從伺服器段發送過來的消息
BufferedReader br=new BufferedReader(new InputStreamReader(is));//用bufferedreader包裝下輸入流

OutputStream os=client.getOutputStream();//這是用來給伺服器發送消息的輸出流
PrintStream ps=new PrintStream(os);
Scanner scanner=new Scanner(System.in);//從鍵盤輸入字元串

boolean flag=true;//定義一個死循環,讓伺服器不停的接受從客戶端發送來的字元串
while(flag)
{
String s=br.readLine();//s是從客戶端接受到得字元串
System.out.println(s);

String s2=scanner.nextLine();//s2是寫給客戶端的字元串
ps.println(s2); //給客戶端發送你寫的東西
}
client.close();
} catch (IOException e) {//try 跟catch你不用管,這是用來處理異常的,就是固定格式

e.printStackTrace();
}
}
} 下面是客戶端import java.io.*;
import java.net.*;
import java.util.Scanner;public class Client
{ public static void main(String[] args)
{
try
{
Socket client=new Socket("192.168.--.--",8888);//IP地址是個字元串,埠號是個整數,這個埠號要跟前面你寫的那個一樣,還有IP地址,寫你的機器的IP地址

InputStream is=client.getInputStream();//這邊的兩個流跟上面伺服器的差不多的作用
BufferedReader bf=new BufferedReader(new InputStreamReader(is));

OutputStream os=client.getOutputStream();
PrintStream ps=new PrintStream(os);
Scanner scanner=new Scanner(System.in);
boolean flag=true;
while(flag)//這句話可以讓客戶端不停的說話

5、java客戶端和伺服器端怎麼運行

可以的,在你的機器上裝資料庫的客戶端和服務端。然後你先運行服務端,再運行客戶專端。裝資料庫的時候屬你記得,一定要裝服務端和客戶端就好了。到時候你還能裝個SQL PLUS 就能查看你寫的SQL語句是不是正確的。或者裝個OB。對你的學習很有幫助的。

6、java客戶端與伺服器端

沒有來描述清楚。按照源字面理解,服務端根據客戶端發送的信息判斷是否發送文件是嗎?伺服器端根據客戶端請求的信息,如果要返迴文件,伺服器端讀取文件向客戶端寫文件,比如讀取文件向客戶端寫位元組流。客戶端肯定是不能直接訪問伺服器端文件的。如果文件是放在可以公開訪問的地址,返回地址,客戶端下載就是了。所以你的問題沒有描述清楚。

7、JAVA 實現 伺服器端與客戶端 對象流傳輸?

這個,在客戶端和服務端都要有cn.lxzp.turn.User的定義。
你把客戶端的這個類編譯好後,引入到服務端的類路徑裡面。

簡單來說就是把User類編譯,打包成jar文件,拷到服務端,添加到服務端的類路徑裡面去。

8、JAVA的伺服器和客戶端怎麼做

樓上的太長了吧,我寫個簡單的
import java.net.*;
import java.io.*;
import java.util.*;

/**
* TCP協議下單向通信的客戶端程序。
* @ 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){}
}

}

}

9、在java網路連接中有客戶端和伺服器端

我想你應該是想問C/S架構中的客戶端和服務端
兩者最常見的方式是通過Socket方式進行通信。

Socket可以理解成一個電線插座的工作過程:
伺服器是電源插件, 客戶端是電器
C和S通過電線和指定的插孔進行連接,連上後,S將電力源源不斷發送到C, C就可以工作了。 當然C也可以反向發送信息到S。 兩者可以相互通信。

在建立的過程中代碼有一些不同。
在服務端採用API類是ServerSocket
在客戶端採用的API是Socket類

連接建立後,雙方都通過連接獲取輸入和輸出流從而實現通信。即: InputStream is=socket.getInputStream();
is.read(...);

連接代碼:
S端:
ServerSocket server=null;
try {
server=new ServerSocket(指定的埠);
}catch(Exception e){
System.out.println("不能監聽:"+e.toString());
}
Socket socket=null;
try {
socket=server.accept();
InputStream is=socket.getInputStream();
//己通過建立起流,可以讀取客戶端發來的請求了
//同樣也可以發送能過 sokcet.getOutputStream()
.....
}
catch(IOException e){
System.out.println("出錯:"+e.toString());
}finally{
try {
if(socket!=null){
socket.close();
server.close();
}
}
catch(IOException e){
e.printStackTrace();
}
}

客戶端:
Socket socket=null;
try {
socket=new Socket(url,埠);
//獲取輸出流,從而向服務端發數據
socket.getOutputStream();
//獲取輸入流,從而可以讀服務端的數據
socket.getInputStream();
.....
}catch(Exception e){
e.printStackTrace();
}
finally{
try {
socket.close();
}
catch(IOException e){
e.printStackTrace();
}
}

10、java客戶端與伺服器

先啟動伺服器,再啟動客戶端

//Server.java
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) throws Exception {
int port = 12345;
ServerSocket server = new ServerSocket(port);
System.out.println("伺服器就緒,等待用戶登錄:");
Socket so = server.accept();
byte[] buff = new byte[1024];
int read = so.getInputStream().read(buff);
String str = new String(buff,0,read);
String[] split = str.split(",");
for(int i=0; i<split.length; i++)
System.out.println(split[i]);
so.close();
server.close();
}
}

//Client.java
import java.net.Socket;
public class Client {
public static void main(String[] args) throws Exception {
int port = 12345;
System.out.print("在此輸入用戶名和密碼,並用','分開:");
byte[] buff = new byte[1024];
int read = System.in.read(buff);
String str = new String(buff,0,read);
Socket so = new Socket("localhost",port);
so.getOutputStream().write(str.getBytes());
so.getOutputStream().flush();
so.getOutputStream().close();
so.close();
}
}

與客戶端java伺服器端相關的知識