`

30、servlet---tomcat原理

    博客分类:
  • mvc
 
阅读更多
    Servlet出现得早,servlet很强大,但是servlet又一个致命的缺点:用servlet做界面十分吃力。。html代码是嵌入到println中打出来的。。。 Sun推出了jsp。。。jsp做界面比servlet好做多了~  Jsp出现不是对servlet的否定而是对servlet的补充,jsp做界面好多了;

    Servlet是jsp技术的基础jsp是在servlet的基础上发展出来的。。jsp就是servlet但是servlet的基础上改进的。

    jsp+ javabean+ servlet,就构成mvc的开发模式.

静态web:html
动态web:jsp/servlet、php、.net

jsp = html+java#片段+jsp语法+js
jsp比较耗费内存,生成的class文件常驻内存运行,带来的好处就是处理快,效率高。


win7添加端口:
详见:http://jingyan.baidu.com/article/f96699bbadafca894f3c1b7a.html



web服务器运行原理:
public class MyServer {
	public static void main(String[] str) throws IOException{
		//socket封装接收,等待信息到来
		ServerSocket ss = new ServerSocket(8182);
                //长期运行main方法
		while(true)
		{
			Socket s = ss.accept();
			System.out.println("8182上等待");
			OutputStream out = s.getOutputStream();
			BufferedReader br = new BufferedReader(new FileReader("F:\\documents\\hadoop-doc\\centOS.txt"));
			String buf="";
			while((buf = br.readLine())!=null)
			{
				out.write(buf.getBytes());
			}
		
		br.close();
		out.close();
		s.close();
		}
	}
}


异常:Address already in use: JVM_Bind(端口冲突)
1、查看端口是否开启
2、常看端口是否被占用
netstat -na



java运行包里程序:
1、正常编译
F>javac  -d .MyServer.java
2、运行时:
F>java org.nick.server.MyServer


常用的web服务器
jboss
webLogic
WebSphere
tomcat(小中型)(大型=tomcat集成)


tomcat 目录结构

work目录:该目录用于存放jsp页面被编译后生成的servert文件和.class文件,在有时候修改jsp文件后,而浏览器没有任何改动,需要将此目录清空,让tomcat重新编译。
conf/web.xml :以及web请求mini的数据类型
<!--session超时时间为30分钟-->
    <session-config>
        <session-timeout>30</session-timeout>
    </session-config>



虚拟目录设置:
1、默认为webapps目录
2、在<Host>节点间添加:
 <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
<Context path="/web2"  docBase="d:\web2"/>
      </Host>

注意:xml文件慎用中文做注解
tomcat启动时,也要对xml文件解析,然后将其属性存放在内存常驻;
选项:
reloadable="true|false" 监控work目录是否发生变化后,自动更新 ,开发时设置为true,发布后设置为false,开销比较大。
upackWAR="true|false" 运行war文件时自动解压,默认为true


设置域名:
1、修改hosts文件
   C:\Windows\System32\drivers\etc   127.0.0.1    www.nick.org
2、添加或修改 tomcat/server.xml
  <Host name="www.nick.org"  appBase="d:\web3"
            unpackWARs="true" autoDeploy="true">
3、如果ip地址都为127.0.0.1 而域名指向了几个不同的目录,需要设置默认主机
    <Engine name="Catalina" defaultHost="localhost">

server.xml文件结构
  <Service name="Catalina">
        <Connector port="8182" protocol="HTTP/1.1"   />
        <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
               <Engine name="Catalina" defaultHost="localhost">
                      <Host name="www.nick.org"
                      <Host name="localhost"
                             <Context
                             <Context   ./>
                     </Host>
    </Engine>
  </Service>
</Server>
  • 大小: 98.6 KB
  • 大小: 89.1 KB
  • 大小: 255.3 KB
分享到:
评论

相关推荐

    javax.servlet-api-3.1.0.jar

    《深入理解Java Servlet API 3.1.0》 在Java Web开发中,`javax.servlet-api-3.1.0.jar`是一个至关重要的组件,它代表了Servlet API的...理解和掌握Servlet API的原理和使用方法,是每个Java Web开发者必备的技能。

    apache-tomcat-6.0.35和apache-tomcat-6.0.35 src

    - `apache-tomcat-6.0.35-src.zip`提供了Tomcat的完整源代码,开发者可以深入理解Tomcat的工作原理,学习Servlet容器的设计和实现,或者进行自定义扩展和调试。 - 源代码中的关键模块包括`catalina`(核心服务实现...

    servlet源码 servlet-api-src javax.servlet.Servlet源码

    在Web应用启动时,Servlet容器(如Tomcat)会根据配置加载Servlet,并调用`init()`进行初始化。当收到请求时,容器会调用`service()`,根据请求类型分发到相应的do方法。当Web应用关闭或者Servlet不再需要时,容器会...

    servlet-jar包

    在使用这些Servlet JAR文件时,确保它们只在开发环境中使用,因为生产环境中通常由应用服务器(如Tomcat、Jetty等)提供Servlet API的实现。在打包WAR或EAR文件时,不应包含Servlet API JAR,以防止与服务器提供的...

    apache-tomcat-8.5.97-windows-x.zip

    Apache Tomcat 是一个开源软件应用服务器,主要用于部署和运行Java Servlet和JavaServer Pages(JSP)应用程序。这个压缩包文件 "apache-tomcat-8.5.97-windows-x.zip" 包含了Apache Tomcat 8.5.97 版本在Windows...

    apache-tomcat-8.5.47.tar.gz

    Apache Tomcat 是一个开源的Java Servlet容器,它实现了Java EE中的...总的来说,"apache-tomcat-8.5.47.tar.gz"是部署Java Web应用的关键工具,理解其工作原理和管理方式对于任何Java开发者或系统管理员都至关重要。

    jsp-api.jar和servlet-api.jar

    7. **Web容器** - 如Tomcat、Jetty等,它们提供运行Servlet和JSP的环境,解析web.xml,管理Servlet和JSP的生命周期。 8. **Java EE与微服务** - 虽然JSP和Servlet是Java EE的一部分,但现代Web开发中,它们更常用于...

    apache-tomcat-9.0.2-windows-x64

    Apache Tomcat是一款广泛应用的开源Java Servlet容器,由Apache软件基金会维护。它实现了Java EE的Web应用程序规范,特别是Servlet和JSP。"apache-tomcat-9.0.2-windows-x64"指的是Tomcat的第9.0.2版本,针对64位...

    apache-tomcat-8.5.64-windows-x64.zip

    Apache Tomcat 8.5是Java Servlet和JavaServer Pages(JSP)的开源Web应用程序服务器,由Apache软件基金会开发和维护。它是一个轻量级应用服务器,特别适用于部署Java EE Web应用程序。在这个“apache-tomcat-8.5.64...

    官方原版apache-tomcat-10.0.0-M4-windows-x64.zip

    Apache Tomcat是一个开源的软件应用服务器,主要用于运行Java Servlets和JavaServer Pages(JSP)。...通过理解其内部结构和工作原理,我们可以更有效地利用Tomcat来构建和管理我们的Web应用程序。

    apache-tomcat-8.5.16.tar.gz

    Apache Tomcat是一个开源的软件应用服务器,主要用于部署和运行Java Servlet和JavaServer Pages(JSP)应用程序。...通过深入理解其工作原理和配置技巧,可以更好地利用Tomcat构建高效、安全的Web服务环境。

    apache-tomcat-8.5.8.tar.gz

    10. **文档和示例**:`docs`目录包含Tomcat的API文档和其他用户指南,`examples`目录提供了一些简单的JSP和Servlet示例,有助于学习和理解Tomcat的工作原理。 要部署和运行这个Apache Tomcat实例,你需要先解压`...

    apache-tomcat-5.5.20和apache-tomcat-5.5.20-admin

    以上就是Apache Tomcat 5.5.20及其管理工具的基本知识点,虽然版本较旧,但理解其工作原理对于理解现代Tomcat版本依然有价值。在实际使用中,应考虑升级到更安全和支持更新的Java版本的Tomcat发行版。

    S06-tomcat之servlet内存马1

    "S06-tomcat之servlet内存马1" 在 Tomcat 中,Servlet 内存马是一种特殊的 Servlet,它可以动态注册 Tomcat 组件,实现内存马攻击。下面将对 Servlet 内存马的工作原理和实现机制进行详细的分析和解释。 Servlet ...

    apache-TOMCAT-5.5.25

    Apache Tomcat是一款开源的软件,它是Java Servlet和JavaServer Pages(JSP)技术的应用服务器,同时也作为Java EE Web应用程序...对于学习和理解Servlet和JSP技术,以及Web应用服务器的工作原理,这是一个很好的起点。

    tomcat源码,servlet-api源码

    对于开发者来说,理解Tomcat的源码可以帮助我们更好地优化应用性能,解决运行时问题,以及深入理解Java Web容器的工作原理。 1. **Tomcat架构解析** Tomcat的核心架构包括Catalina、 Coyote、 Jasper、 Juli和...

    apache-tomcat-7.0.39-src

    - `apache-tomcat-7.0.39-src`提供的源代码可以帮助开发者深入理解Tomcat的工作原理,进行自定义修改或扩展,例如添加新的特性或优化性能。 通过学习和理解这些知识点,开发者可以有效地利用Apache Tomcat 7.0.39...

    apache-tomcat-5.5.26+apache-tomcat-5.5.26-admin.zip

    总的来说,这个压缩包提供了对Tomcat服务器及其管理功能的全面访问,对于学习Tomcat的内部工作原理、配置以及Java Web应用的部署都是一个很好的起点。然而,考虑到版本的陈旧,实际生产环境中建议使用更现代的版本,...

    apache-tomcat-7.0.107.tar.gz

    Apache Tomcat是一个开源的软件应用服务器,主要用于部署和运行Java Servlet和JavaServer Pages(JSP)应用程序。...无论你是开发者还是系统管理员,熟悉Tomcat的工作原理和最佳实践都是至关重要的。

    apache-tomcat-9.0.65-windows-x64.zip

    Apache Tomcat是一个非常知名的开源Java Servlet容器,它实现了Java EE Web应用程序规范,特别是Servlet和JavaServer Pages(JSP)。在本例中,我们讨论的是Apache Tomcat的第9.0.65版本,专为Windows x64操作系统...

Global site tag (gtag.js) - Google Analytics