導航:首頁 > 配伺服器 > java如何在伺服器運行

java如何在伺服器運行

發布時間:2023-03-27 03:43:39

① 用java做了一個簡單的定時任務工程,不知道如何讓它在伺服器上運行起來應該怎麼做

這個是我在網上找的不知道是不是你要的:

java定時任務Timer 關於定時任務,似乎跟時間操作的聯系並不是很大,但是前面既然提到了定時任務,索性在這里一起解決了。設置定時任務很簡單,用Timer類就搞定了。一、延時執行首先,我們定義一個類,給它取個名字叫TimeTask,我們的定時任務,就在這個類的main函數里執行。代碼如下:
package test;
import java.util.Timer;
public class TimeTaskTest {
public static void main(String[] args){ Timer timer = new Timer();
timer.schele(new Task(), 60 * 1000);
}
}
解釋一下上面的代碼。上面的代碼實現了這樣一個功能,當TimeTask程序啟動以後,過一分鍾後執行某項任務。很簡單吧:先new一個Timer對象,然後調用它的schele方法,這個方法有四個重載的方法,這里我們用其中一個,
public void schele(TimerTask task,long delay)
首先,第一個參數第一個參數就是我們要執行的任務。這是一個TimerTask對象,確切點說是一個實現TimerTask的類的對象,因為TimerTask是個抽象類。上面的代碼里 面,Task就是我們自己定義的實現了TimerTask的類,因為是在同一個包裡面,所以沒有顯性的import進來。Task類的代碼如下
package test;
import java.util.TimerTask;
public class Task extends TimerTask { public void run()
{
System.out.println("定時任務執行");
}
}
我們的Task必須實現TimerTask的方法run,要執行的任務就在這個run方法裡面,這里,我們只讓它往控制台打一行字。第二個參數第二個參數是一個long型的值。這是延遲的時間,就是從程序開始以後,再過多少時間來執行定時任務。這個long型的值是毫秒數,所以前面我們的程序裡面,過一分鍾後執行用的參數值就是 60 * 1000。二、循環執行設置定時任務的時候,往往我們需要重復的執行這樣任務,每隔一段時間執行一次,而上面的方法是只執行一次的,這樣就用到了schele方法的是另一個重載函數public void schele(TimerTask task,long delay,long period)
前兩個參數就不用說什麼了,最後一個參數就是間隔的時間,又是個long型的毫秒數(看來java里涉及到時間的,跟這個long是脫不了干係了),比如我們希望上面的任務從第一次執行後,每個一分鍾執行一次,第三個參數值賦60 * 1000就ok了。三、指定執行時間既然號稱是定時任務,我們肯定希望由我們來指定任務指定的時間,顯然上面的方法就不中用了,因為我們不知道程序什麼時間開始運行,就沒辦法確定需要延時多少。沒關系,schele四個重載的方法還沒用完呢。用下面這個就OK了:
public void schele(TimerTask task,Date time)
比如,我們希望定時任務2006年7月2日0時0分執行,只要給第二個參數傳一個時間設置為2006年7月2日0時0分的Date對象就可以了。有一種情況是,可能我們的程序啟動的時候,已經是2006年7月3日了,這樣的話,程序一啟動,定時任務就開始執行了。schele最後一個重載的方法是public void schele(TimerTask task,Date firstTime,long period)
沒必要說什麼了吧:)四、j2ee中的定時任務在實際的項目中,往往定時任務需要對web工程中的資源進行操作,這樣一來,用上面的單個程序的方式可能就有點力不從心了,因為很多web工程的資源它操作不到。解決的辦法是,使用Servlet,把執行定時任務的那些代碼放到Servlet的init()函數里就可以了,這個easy,就沒有必要再寫示例代碼了吧

② 怎麼在伺服器上用eclipse運行java程序

你說的伺服器可以看到桌面啥的,那都是安裝了圖形化界面的,正常伺服器的話,都是不安裝這個的,只有最低限度的開發運行環境
java程序想部署到伺服器的話,都是在自己電腦上面開發好後打包成jar或者war包,然後傳到伺服器上用命令行來直接運行的

③ 用java寫的安卓服務端怎麼在伺服器空間里運行

服務端項純談目部署到伺服器(和普團世通Javaproject一樣)Android端訪問服務端的項目的方法就可以了地址要寫成做或碰服務端ip

④ java項目部署到windows伺服器上如何運行

方法如下:

  1. 找到菜單window→ShowView→Servers,打開Servers視圖標簽,部署的Tomcat服務


  2. 在新打開的對話框中,有一個Project項,選擇要部署的項目

  3. 點擊「Finish」完成部署

  4. 這樣項目就部署到Tomcat裡面去了

⑤ 怎麼讓java程序在伺服器上開機就運行

看你是什麼伺服器?
如果是windows,寫個run.bat腳遲含本,裡面寫上 java -classpath .;xx.jar:xx.jar test,然後放到開機啟動項中,即可
如果是linux,寫個run.sh腳慎源本,裡面寫寬旦態上 java -classpath .:xx.jar:xx.jar test,然後將這個文件放到 /etc/rc.d/init.d/下,並給予執行許可權 chmod 755 run.sh,即可

⑥ 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項目在伺服器運行起來

下載tomcat,將項目部署到tomcat。下載類似花生殼的發布軟體,申請域名將域名綁定到你的外網伺服器地址指向你的項目的埠.在tomcat中配置相應的域名信息。其他人就可以訪問了

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

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

⑨ 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實現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 ( 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 jweb>java webserver

然後在客戶機運行瀏覽器軟體 在URL處輸入WebServer程序所屬的URL地址(如 ) 就在瀏覽器窗口顯示出指定的HTML文檔

注意 不能預設埠號 如預設 則運行該主機的正常WEB伺服器

lishixin/Article/program/Java/hx/201311/26626

閱讀全文

與java如何在伺服器運行相關的資料

熱點內容
廣州視頻流加密晶元 瀏覽:648
伺服器異常有什麼預兆 瀏覽:748
安卓airpodspro怎麼調降噪模式 瀏覽:99
承憲的朋友電影 瀏覽:778
農場互助源碼手機版 瀏覽:115
萬安如何使用雲伺服器ip 瀏覽:212
編程語言python入門電子書 瀏覽:401
什麼是民政生存認證app 瀏覽:633
java怎麼退出 瀏覽:903
掛接pdf 瀏覽:166
浪潮伺服器遠程修改bmc地址 瀏覽:120
單立文電影 瀏覽:873
linuxtar命令 瀏覽:876
優酷app如何屏蔽短視頻 瀏覽:480
看著就解壓的軟體 瀏覽:785
android撥號界面源碼 瀏覽:54
在線高清 瀏覽:375
程序員陸漓發型劉海 瀏覽:484
台灣電影《三十兒立》 瀏覽:316
南京學程序員培訓班 瀏覽:267