您的位置:首页 > 运维架构 > Tomcat

javaweb-day04-1(javaWeb开发入门 - tomcat启动问题)

2015-01-27 21:26 477 查看

WEB开发的相关知识

WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源。
Internet上供外界访问的Web资源分为:
静态web资源(如html 页面):指web页面中供人们浏览的数据始终是不变。
动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同。

静态web资源开发技术
Html

常用动态web资源开发技术:
JSP/Servlet、ASP、PHP等
在Java中,动态web资源开发技术统称为Javaweb,我们课程的重点也是教大家如何使用Java技术开发动态的web资源,即动态web页面。

WEB服务器

学习web开发,需要先安装一台web服务器,然后再在web服务器中开发相应的web资源,供用户使用浏览器访问。
疑问:学习web开发,为什么必须要先装一个WEB服务器。



上图中,那个网络程序就是web服务器,它是本地web资源和客户浏览器之间的桥梁。

自己写的web服务器:

Server.java

package cn.mengmei;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class Server {

public static void main(String[] args) throws Exception {

ServerSocket ss = new ServerSocket(19999);
Socket s = ss.accept();

OutputStream out = s.getOutputStream();
BufferedReader reader = new BufferedReader(new FileReader("src/1.html"));
String line = null;
while((line = reader.readLine())!=null){
out.write(line.getBytes());
}

out.close();
reader.close();
s.close();
ss.close();
}

}
本地静态web资源:1.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>1.html</title>

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">

<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->

</head>

<body>
This is my HTML page. <br>
</body>
</html>


启动Server.java 程序,当用浏览器输入:http://localhost:19999  并回车,Server程序就会读取1.html文件,并把它输出给浏览器。

常见WEB服务器

WebLogic是BEA公司的产品,是目前应用最广泛的Web服务器,支持J2EE规范,而且不断的完善以适应新的开发要求,启动界面如图 



另一个常用的Web服务器是IBM公司的WebSphere,支持J2EE规范,启动界面如图



在小型的应用系统或者有特殊需要的系统中,可以使用一个免费的Web服务器:Tomcat,该服务器支持全部JSP以及Servlet规范,启动界面如图



Tomcat服务器

Tomcat官方站点:http://jakarta.apache.org
获取Tomcat安装程序包
tar.gz文件是Linux操作系统下的安装版本
exe文件是Windows系统下的安装版本
zip文件是Windows系统下的压缩版本

安装Tomcat
双击 bin 目录下的 startup.bat 文件
输入 http://localhost:8080/,显示如下界面代表安装成功


常见启动问题

Java_home环境变量
在windows中设置java_home环境变量
只要在setclasspath.bat批处理文件第一次使用JAVA_HOME环境变量之前的任何地方,将JAVA_HOME环境变量设置为JDK的主目录,就可以使用startup.bat文件启动Tomcat了。

端口占用问题
Tomcat默认使用8080端口,如果别的程序占用此端口号就会导致起不起来。端口号占用会报错:

               严重:Error initializing endpoint  

               java.net.BindException :  Address already in use :  JVM_Bind<null> : 端口号

在哪里配置 tomcat 端口号:【apache-tomcat-7.0.42 \ conf \ server.xml 】:

               <Connector port="8080" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />

上线部署的时候要将服务器端口号置为80,这样别人只输入本机IP地址就可以访问本地资源。
不建议修改tomcat默认端口号,建议把占用该端口的进程杀死,然后重新启动 tomcat。使用【360安全卫士 - 功能大全 - 流量防火墙 - 网络连接】可以看到每个进程的本地端口号,然后结束该进程。
如果占用端口号的进程怎么也杀不死,就到【我的电脑(右键) - 管理 - 服务】里找到那个服务,然后停掉。(占用80端口的很可能是一个叫inetinfo的进程,需要停掉IIS Admin服务,改为手动。)

Catalina_home环境变量的设置问题  
一台电脑里可能有好几个tomcat服务器,当你在【我的电脑 - 属性 - 高级系统设置 - 环境变量】里配一个名为 Catalina_home 的环境变量指向其中一个tomcat在硬盘中的位置,那么以后不管你启动那个服务器,你启动的都是 Catalina_home 环境变量指向的那一个。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: