當前位置:首頁 » 編程語言 » Java程序在伺服器

Java程序在伺服器

發布時間: 2024-03-26 15:55:03

java 中怎樣在程序中設置代理伺服器

importjava.io.BufferedReader;
importjava.io.InputStreamReader;
importjava.net.Authenticator;
importjava.net.HttpURLConnection;
importjava.net.InetSocketAddress;
importjava.net.PasswordAuthentication;
importjava.net.Proxy;
importjava.net.URL;

publicclassProxyDemo2{
publicstaticvoidmain(String[]args)throwsException{
URLurl=newURL("http://www.3lai8.com");
///創建代理伺服器
InetSocketAddressaddr=newInetSocketAddress("192.168.0.254",8080);
//Proxyproxy=newProxy(Proxy.Type.SOCKS,addr);//Socket代理
Proxyproxy=newProxy(Proxy.Type.HTTP,addr);//http代理
Authenticator.setDefault(newMyAuthenticator("username","password"));//設置代理的用戶和密碼
HttpURLConnectionconnection=(HttpURLConnection)url.openConnection(proxy);//設置代理訪問
InputStreamReaderin=newInputStreamReader(connection.getInputStream());
BufferedReaderreader=newBufferedReader(in);
while(true){
Strings=reader.readLine();
if(s!=null){
System.out.println(s);
}
}
}

{
privateStringuser="";
privateStringpassword="";

publicMyAuthenticator(Stringuser,Stringpassword){
this.user=user;
this.password=password;
}

(){
(user,password.toCharArray());
}
}

}

❷ java程序怎麼在Web伺服器里運行.

如何用Java實現Web伺服器 一、HTTP協議的作用原理

WWW是以Internet作為傳輸媒介的一個應用系統,WWW網上最基本的傳輸單位是Web網頁。WWW的工作基於客戶機/伺服器計算模型,由Web 瀏覽器(客戶機)和Web伺服器(伺服器)構成,兩者之間採用超文本傳送協議(HTTP)進行通信。HTTP協議是基於TCP/IP協議之上的協議,是Web瀏覽器和Web伺服器之間的應用層協議,是通用的、無狀態的、面向對象的協議。HTTP協議的作用原理包括四個步驟:

(1) 連接:Web瀏覽器與Web伺服器建立連接,打開一個稱為socket(套接字)的虛擬文件,此文件的建立標志著連接建立成功。

(2) 請求:Web瀏覽器通過socket向Web伺服器提交請求。HTTP的請求一般是GET或POST命令(POST用於FORM參數的傳遞)。GET命令的格式為:

GET 路徑/文件名 HTTP/1.0

文件名指出所訪問的文件,HTTP/1.0指出Web瀏覽器使用的HTTP版本。

(3) 應答:Web瀏覽器提交請求後,通過HTTP協議傳送給Web伺服器。Web伺服器接到後,進行事務處理,處理結果又通過HTTP傳回給Web瀏覽器,從而在Web瀏覽器上顯示出所請求的頁面。

例:假設客戶機與www.mycompany.com:8080/mydir/index.html建立了連接,就會發送GET命令:GET /mydir/index.html HTTP/1.0.主機名為www.mycompany.com的Web伺服器從它的文檔空間中搜索子目錄mydir的文件index.html.如果找到該文件,Web伺服器把該文件內容傳送給相應的Web瀏覽器。

為了告知 Web瀏覽器傳送內容的類型,Web伺服器首先傳送一些HTTP頭信息,然後傳送具體內容(即HTTP體信息),HTTP頭信息和HTTP體信息之間用一個空行分開。

常用的HTTP頭信息有:

① HTTP 1.0 200 OK

這是Web伺服器應答的第一行,列出伺服器正在運行的HTTP版本號和應答代碼。代碼「200 OK」表示請求完成。

② MIME_Version:1.0

它指示MIME類型的版本。

③ content_type:類型

這個頭信息非常重要,它指示HTTP體信息的MIME類型。如:content_type:text/html指示傳送的數據是HTML文檔。

④ content_length:長度值

它指示HTTP體信息的長度(位元組)。

(4) 關閉連接:當應答結束後,Web瀏覽器與Web伺服器必須斷開,以保證其它Web瀏覽器能夠與Web伺服器建立連接。

二、Java實現Web伺服器功能的程序設計

根據上述HTTP協議的作用原理,實現GET請求的Web伺服器程序的方法如下:

(1) 創建ServerSocket類對象,監聽埠8080.這是為了區別於HTTP的標准TCP/IP埠80而取的;

(2) 等待、接受客戶機連接到埠8080,得到與客戶機連接的socket;

(3) 創建與socket字相關聯的輸入流instream和輸出流outstream;

(4) 從與socket關聯的輸入流instream中讀取一行客戶機提交的請求信息,請求信息的格式為:GET 路徑/文件名 HTTP/1.0

(5) 從請求信息中獲取請求類型。如果請求類型是GET,則從請求信息中獲取所訪問的HTML文件名。沒有HTML文件名時,則以index.html作為文件名;

(6) 如果HTML文件存在,則打開HTML文件,把HTTP頭信息和HTML文件內容通過socket傳回給Web瀏覽器,然後關閉文件。否則發送錯誤信息給Web瀏覽器;

(7) 關閉與相應Web瀏覽器連接的socket字。

下面的程序是根據上述方法編寫的、可實現多線程的Web伺服器,以保證多個客戶機能同時與該Web伺服器連接。

程序1:WebServer.java文件

//WebServer.java 用JAVA編寫Web伺服器

import java.io.*;

import java.net.*;

public class WebServer {

public static void main(String args[]) {

int i=1, PORT=8080;

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/1.0 200 OK");

outstream.println("MIME_version:1.0");

outstream.println("Content_Type:text/html");

int len=(int)file.length();

outstream.println("Content_Length:"+len);

outstream.println("");

sendfile(outstream,file); //發送文件

outstream.flush();

} else { //文件不存在時

String notfound="

Error 404-file not found
";

outstream.println("HTTP/1.0 404 no found");

outstream.println("Content_Type:text/html");

outstream.println("Content_Length:"+notfound.length()+2);

outstream.println("");

outstream.println(notfound);

outstream.flush();

}

http://java.chinaitlab.com/advance/519981.html

❸ java程序如何在linux伺服器上運行

直接與JDK在Linux下Java程序開發,你需要三樣東西:1,
文本編輯器,你可以選擇VIM,但考慮到Windows的習慣,建議用gedit
2。編譯器,它是javac的
3解釋器的程序,它是Java

到Ubuntu為例:內容
$ gedit中Hello.java

Hello.java可能因此:
---
公共類你好{
公共靜態無效的主要(字串[] args){
的System.out.println(「HelloWorld」的);
}}

---

$ LS
Hello.java

$的javac Hello.java
....
BR> $ java的你好
的Helloworld

以上,而在windows基本相同。
中國我覺得你的問題可能是如何安裝的JDK。 1.在
很多方法,你可以根據JDK的Linux二進製版本下載到太陽的主頁,然後才能進行
$存取許可權chmod a + X JDK-XXX-xxx.bin

以root許可權運行
#。 / JDK-XXX-xxx.bin

2.如果您使用的是RedHat,FeforaCore的Linux版本是這樣,那麼你可以下載JDK的rpm包,然後在root許可權安裝:
#rpm -ivh JDK -xxx-xxx.rpm

3.如果使用這樣的系統的Debian,Ubuntu的,這是很簡單的,就這樣任:
$命令和apt-get安裝JDK ...
更詳細的內容可以看到Ubuntu的中國維基評論,
寫的很詳細以上只是一個粗略的概述的步驟,當然你不應該因為它不使用Linux,你應該了解

Sygwin不是一個編輯器,而是一個Win32的Linux開發環境下實現的。
您可以在sygwin安裝JDK。
你問具體地講,它不會安裝JDK,或者不使用JDK編譯,或者不知道如何使用文本編輯器?

❹ java 文件在伺服器中定位絕對路徑

在jsp和class文件中調用的相對路徑不同。 在jsp里,根目錄是WebRoot 在class文件中,根目錄是WebRoot/WEB-INF/classes 當然你也可以用System.getProperty("user.dir")獲取你工程的絕對路徑。
另:在Jsp,Servlet,Java中詳細獲得路徑的方法!
1.jsp中取得路徑:

以工程名為TEST為例:

(1)得到包含工程名的當前頁面全路徑:request.getRequestURI()
結果:/TEST/test.jsp
(2)得到工程名:request.getContextPath()
結果:/TEST
(3)得到當前頁面所在目錄下全名稱:request.getServletPath()
結果:如果頁面在jsp目錄下 /TEST/jsp/test.jsp
(4)得到頁面所在伺服器的全路徑:application.getRealPath("頁面.jsp")
結果:D:\resin\webapps\TEST\test.jsp
(5)得到頁面所在伺服器的絕對路徑:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent();
結果:D:\resin\webapps\TEST

2.在類中取得路徑:

(1)類的絕對路徑:Class.class.getClass().getResource("/").getPath()
結果:/D:/TEST/WebRoot/WEB-INF/classes/pack/
(2)得到工程的路徑:System.getProperty("user.dir")
結果:D:\TEST

3.在Servlet中取得路徑:

(1)得到工程目錄:request.getSession().getServletContext().getRealPath("") 參數可具體到包名。
結果:E:\Tomcat\webapps\TEST
(2)得到IE地址欄地址:request.getRequestURL()
結果:http://localhost:8080/TEST/test
(3)得到相對地址:request.getRequestURI()
結果:/TEST/test

❺ java編寫的程序怎樣放在伺服器上,並通過互聯網打開操作該程序

放在伺服器上指的是?
看你寫的什麼程序了,如果是web程序,伺服器是linux系統的話。
首先要安裝jdk之類的環境並且設置環境變數。一邊在bashrc 等地方設置。
然後安裝tomcat之類的web容器 用來發布程序。然後把程序拷貝到web容器的對應目錄下就好了。
如果是純java程序,那要些server端和client端,通過socket或者第三方庫來實現訪問。
如果只是單機的java的話,直接拷貝到伺服器上,通過ssh遠程登錄到伺服器上,執行就可以了。當然前提是環境變數。

❻ 怎麼在伺服器上運行寫的java程序

1.先安裝j2sdk
我安裝路徑是:D:\Program Files\Java\j2sdk

2.再安裝eclipse
Eclipse是綠色軟體,不需要安裝,把下載回來的eclipse壓縮解壓就可以了
我安裝的路徑是:D:\Program Files\Java\eclipse

3.安裝tomcat
下載回來的是一安裝文件,按照安裝提示進行就可以了
我安裝的路徑是:D:\Program Files\Java\Tomcat

4.安裝eclipse插件
中文包
直接將壓縮包NLpack-eclipse-SDK-3.0.x-win32內features和plugins兩文件夾內的內容解壓到eclipse文件夾內同名文件夾就可以了。
Tomcat插件
將壓縮包tomcatPluginV3解壓,把plugins文件夾內的內容解壓到eclipse文件夾內同名文件夾就可以了。

三.環境配置

1.系統環境變數配置
右擊「我的電腦」->高級->環境變數,
設置JAVA_HOME變數指向其安裝的目錄「D:\Program Files\Java\j2sdk」;
TOMCAT_HOME變數指向其安裝的目錄「D:\Program Files\Java\Tomcat」;
PATH變數中含有「%JAVA_HOME%\bin;」;
CLASSPATH變數含有「%JAVA_HOME%\lib\tools.jar;」;

2.eclipse中java運行環境的配置
在eclipse主窗口中,「窗口」->首選項->java->已安裝的JRE,選我們已經安裝的j2sdk

3. 配置Sysdeo Tomcat 插件
在eclipse主窗口中,「窗口」->首選項->tomcat,tomcat version 選 version 5.x(我們安裝的版本),tomcat home 處填我們安裝tomcat的路徑,這里就是D:\Program Files\Java\Tomcat。
切換到Advanced選項,在tomcat base處再填我們安裝tomcat的路徑,這里就是D:\Program Files\Java\Tomcat。
切換到JVM Setting選項,確定jre是你已經安裝的j2sdk版本,我們這里選j2sdk。
切換到Tomcat Manger App,為管理界面增加一個用戶。
最後按應用按鈕,然後在確定。

熱點內容
linuxpython2與3共存 發布:2024-11-28 21:43:41 瀏覽:904
短視頻平台上傳視頻規范 發布:2024-11-28 21:41:22 瀏覽:553
c語言統計素數的個數 發布:2024-11-28 21:38:24 瀏覽:837
我的世界伺服器管理員沒了怎麼辦 發布:2024-11-28 21:37:22 瀏覽:183
請求分段存儲 發布:2024-11-28 21:23:20 瀏覽:458
zip偽加密 發布:2024-11-28 21:23:17 瀏覽:226
linuxshell路徑 發布:2024-11-28 21:13:05 瀏覽:994
存儲為web所用格式切片 發布:2024-11-28 21:11:23 瀏覽:452
伺服器電腦主機怎麼裝 發布:2024-11-28 21:06:41 瀏覽:222
android調用aidl 發布:2024-11-28 21:05:46 瀏覽:867