當前位置:首頁 » 密碼管理 » java訪問遠程伺服器

java訪問遠程伺服器

發布時間: 2023-03-03 11:07:15

java客戶端遠程調用C伺服器

真沒有作過相關的開發,Java和C之間相互調用,本地的使用jni或者是直接發送Windows消息;遠程的,都是使用socket通信的。談一些想法,希望能給你些幫助,紙上談兵:
1)現在常用的異構系統之間的調用,採用Web Service的方法,沒做過,但是應該可以。
2)RMI是Java To Java,另外Sun還提供了RMI-IIOP,這個是綜合了RMI和Corba,是可以用在Java和其它語言對象之間的遠程調用,但是我沒有資料,也許你需要看看Corba的基本知識,如何使用idl來定義C對象的介面.
3)我不知道你對C所在的伺服器有什麼要求,是否可以運行Java.如果可以,那麼有一個方法,你可以做一個Java程序來作為RMI的伺服器,然後這個Java程序負責和Java客戶通信,通信的方式還是RMI.然後,在這個Java服務程序中,同過jni的方法調用你的C程序.

⑵ Java怎麼讀取遠程伺服器上的共享文件夾

ava獲取遠程文件的方式在我的開發過程中使用過兩種
1。通過http請求進行靜態資源,首先確定文件的URL地址,然後通過URLConnection進行連接,然後通過讀取連接中返回的InputStream,再通過文件輸出流FileOutputStream進行存儲(下載)。
2.通過FTP或SFTP進行遠程文件的下載,具體實現有很多第三方的包,網路即可。

⑶ 通過java如何操作遠程的linux伺服器中的文件

在Linux伺服器上開個FTP吧,然後Java通過FTP去訪問。這樣比較簡單。
通過ssh也可以,找個Java的ssh Jar包

⑷ java網路編程實驗題遠程訪問伺服器目錄的程序

代碼如下。。。我測試過了。。。。下面兩個類是在同一台機器上進行測試的,先運行Server.java,再運行Client.java

import java.io.*;
import java.net.*;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Server {
public static void main(String[] args) throws Exception{
ServerSocket ss = new ServerSocket(8080);
Socket socket = ss.accept();
BufferedReader in = //獲取客戶端發過來的消息
new BufferedReader(
new InputStreamReader(socket.getInputStream()));
PrintWriter out = //用於向客戶端發送消息
new PrintWriter(
new OutputStreamWriter(
socket.getOutputStream()),true);
while(true){
String message = in.readLine();//讀取消息
if("quit".equals(message))//退出命令
break;
String s[] = message.split("\\s+");
if("dir".equals(s[0])){
File dir = new File(s[1]);
File[] files = dir.listFiles();
//向客戶端發送文件消息
for(File file:files){
Date date = new Date(file.lastModified());
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");//日期格式化
FileInputStream is = new FileInputStream(file);
out.println(file.getName()+"\t"+df.format(date)+"\t"+((is.available()+1023)/1024)+"k");
}
out.println("ok");
}
}

socket.close();
in.close();
out.close();
ss.close();
}
}
-------------------------------------------------------------------------------------------------------------

import java.io.*;
import java.net.*;

public class Client {

public static void main(String[] args) throws Exception{
InetAddress add = InetAddress.getByName(null);
Socket socket = new Socket(add,8080);
BufferedReader in = //獲取伺服器端發過來的消息
new BufferedReader(
new InputStreamReader(socket.getInputStream()));
PrintWriter out = //用於向伺服器端發送消息
new PrintWriter(
new OutputStreamWriter(
socket.getOutputStream()),true);
out.println("dir d:/test");
String mes;
while(true){
mes = in.readLine();
if("ok".equals(mes))
break;
System.out.println(mes);
}
out.println("quit");

socket.close();
in.close();
out.close();
}
}

希望能幫到你。。。仍有問題可以追問或者直接HI我。。。

⑸ 如何用java程序啟動遠程的linux服務

你得明白,啟動遠程的服務,首先得連接到伺服器上去。
下面有兩種方法:1、通過自定義程序;
2、使用現成的telnet或ssh(推薦)

方法1、首先得看linux伺服器的限制,如果伺服器允許自定義的登錄,
並且你在伺服器上運行了一個監聽某埠(如1234)的程序,
寫一個client端,用socket連接上去,就可以執行了。

方法2、如果伺服器支持ssh或者telnet登錄,且
允許遠程執行腳本的話,可以直接登錄進去(當然這算是
使用現成的程序吧,ssh更安全,不過或許不是你想要的。)

有現成的ssh服務,直接使用就是了,自己寫的肯定沒這個安全~~
要用java的話,應該也有現成的ssh客戶端---

熱點內容
javaopenssl加密 發布:2025-08-21 03:46:51 瀏覽:551
傳智php培訓 發布:2025-08-21 03:46:45 瀏覽:507
我的世界如何在伺服器檢查自己在線時間 發布:2025-08-21 03:45:28 瀏覽:464
linux查看掛載的存儲 發布:2025-08-21 03:41:34 瀏覽:843
cryptopythonrsa 發布:2025-08-21 03:36:29 瀏覽:674
androidmandroidn 發布:2025-08-21 03:31:50 瀏覽:211
為什麼不能把安卓桌面app設為默認 發布:2025-08-21 03:22:31 瀏覽:442
愛奇藝會員密碼哪裡設置 發布:2025-08-21 03:11:57 瀏覽:262
電信電話密碼是什麼 發布:2025-08-21 03:08:14 瀏覽:446
sqlserver自動收縮 發布:2025-08-21 03:07:28 瀏覽:685