首页 > 后端开发 > 正文

java程序怎么在Web服务器里运行.

2024-03-16 10:34:59 | 我爱编程网

今天我爱编程网小编整理了java程序怎么在Web服务器里运行.相关信息,希望在这方面能够更好的大家。

本文目录一览:

java程序怎么在Web服务器里运行.

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();

}

java程序怎么在Web服务器里运行.

服务器上如何运行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,为管理界面增加一个用户。

最后按应用按钮,然后在确定。

java程序怎么在Web服务器里运行.

java程序如何在linux服务器上运行

我爱编程网(https://www.52biancheng.com)小编还为大家带来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程序怎么在Web服务器里运行.全部内容,希望对大家有所帮助!更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“java程序怎么在Web服务器里运行.”相关推荐
java程序如何在linux服务器上运行
java程序如何在linux服务器上运行

怎样使用linux运行java程序?使用linux运行java程序具体步骤如下:1.Windows上使用eclipse编译java工程,编译完成后导出为RunnableJARFile。例如,此处将test工程中的Test2文件export为MyTest2.jar文件。2.Ubuntu上java环境安装。①jdk官网-downloads-2133151.html下载L

2024-03-15 03:02:46
Java中如何让web服务器启动的时候自动运行web程序中某个类的某个
Java中如何让web服务器启动的时候自动运行web程序中某个类的某个

Java中如何让web服务器启动的时候自动运行web程序中某个类的某个1、首先让需要自动运行的类继承javax.servlet.http.HttpServlet2、把需要自动运行的类中写一个init方法。(servlet应用程序启动的入口就是init方法)public void init(){            System.out.println("这样在web容器启

2024-05-14 02:03:52
linux启动java服务linux启动java java程序在linux(Ubuntu14.04)下运行需要安装其他的插件么
linux启动java服务linux启动java java程序在linux(Ubuntu14.04)下运行需要安装其他的插件么

linux运行java程序linux运行java怎么在linux中运行jar包?有以下几种方式:1、java-jarxxxxx.jar//当前ssh窗口被锁定,可按CTRL+C打断程序运行,或直接关闭窗口,程序退出2、java-jarxxxxx.jar//当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行。3、nohupJava-jarxxxxxx.jar//意

2024-06-04 19:33:55
服务器上如何运行Java程序?这个程序主要是监听某个端口是否有信息的?打包->上传->命令行运行?
服务器上如何运行Java程序?这个程序主要是监听某个端口是否有信息的?打包->上传->命令行运行?

服务器上如何运行Java程序?这个程序主要是监听某个端口是否有信息的?打包->上传->命令行运行?1.先安装j2sdk我安装路径是:D:\ProgramFiles\Java\j2sdk2.再安装eclipseEclipse是绿色软件,不需要安装,把下载回来的eclipse压缩包解压就可以了我安装的路径是:D:\ProgramFiles\Java\eclipse3.安装

2024-03-17 01:37:16
用什么方法是java应用程序作为一个后台服务运行
用什么方法是java应用程序作为一个后台服务运行

用什么方法是java应用程序作为一个后台服务运行在Windows中,无法直接用Java产生Service程序;但是可能通过编写DCOM或MTSCOM或COM(Window2000)组件或Corba来模拟Service程序,可以实现透明远程过程调用;StdAfx.h#if!defined(AFX_STDAFX_H__7CCCEEAD_83A0_11D4_B105___INCLUD

2024-05-05 16:13:36
java解释器运行程序 java解释器 java运行环境
java解释器运行程序 java解释器 java运行环境

简述java语言的运行机制简单来说Java程序的运行机制编写 、编译 、运行 三个步骤。运行机制主要是指编译 、运行的过程1、编译Java编译器对源文件进行错误排查的过程,编译后将生成后缀名为.class的字节码文件。好让JVM(java虚拟机)里的解释器可以正常读取。2、运行三步 代码的装入、代码的校验和代码的执行2.1、 代码

2024-06-10 19:23:30
javaFX如何在web应用程序中运行
javaFX如何在web应用程序中运行

javaFX如何在web应用程序中运行1.javaFX也是像applet一样嵌入到页面中才能在web应用程序中运行,但是你需要先将自己的程序使用JavaFX脚本编译器将JavaFX脚本编译成JavaApplet,然后发布到网页中2.用netbeans开发的话,就很方便了,在项目名上右键属性,选run,就可以看到浏览器、手机、webstart等选项,你可以把你的程序任意发布了。怎样才能

2024-06-24 21:56:00
Java程序在eclipse中怎么运行?
Java程序在eclipse中怎么运行?

Java程序在eclipse中怎么运行?中文版:1、打开“运行”菜单,点击“运行(N)...”按钮,进入运行配置界面。2、在左侧选择要运行的程序,然后点击右侧“(x)=自变量”标签,在下面的“程序自变量(A):”文本框中输入程序运行需要的参数。3、点击下面的“运行(R)”按钮运行程序。英文版:1、打开“Run”菜单,点击“Run...”按钮,进入运行配置界面。

2024-04-02 06:43:10