5 Tomcat

1 Web开发入门
            1.1 引入
                之前的程序: java桌面程序,控制台控制,socket gui界面。javase规范
                现在和以后的程序:java web程序。浏览器控制。javaee规范
            1.2 软件的结构
                C/S (Client - Server  客户端-服务器端)
                        典型应用:QQ软件 ,飞秋,红蜘蛛。
                        特点:
                            1)必须下载特定的客户端程序。
                            2)服务器端升级,客户端升级。

B/S (Broswer -Server 浏览器端- 服务器端)
                        典型应用: 腾讯官方(www.qq.com)  163新闻网站, 传智官网(俗称:网站)
                        特点:
                            1)不需要安装特定的客户端(只需要安装浏览器即可!!)
                            2)服务器端升级,浏览器不需要升级!!!!

javaweb的程序就是b/s软件结构!!!
            1.3 服务器
                从物理上来说,服务器就是一台PC机器。8核,8G以上,T来计算,带宽100M

web服务器:PC机器安装一个具有web服务的软件,称之为web服务器
                数据库服务器:PC机器安装一个具有数据管理件服务的软件,称之为数据库服务器。
                邮件服务器:PC机器安装一个具有发送邮件服务的软件,称之为邮件服务器。
            1.4 web服务软件
                web服务软件的作用:把本地的资源共享给外部访问。

1.5 常见的市面上web服务软件
                    javase的规范,包含IO流,线程,集合,socket编程。。。。
                WebLogic: BEA公司的产品。 收费的。支持JavaEE规范。
                WebSphere: IBM公司的产品。收费的。支持JavaEE规范
                JBoss: Redhat公司的产品。收费的。支持JavaEE规范
                Tomcat: 开源组织Apache的产品。免费的。支持部分的JavaEE规范。(servlet、jsp。jdbc,但ejb rmi不支持)
2 Tomcat基本使用
            2.1 下载并按照
            1)到apache官网。www.apache.org     http://jakarta.apache.org(产品的主页)
            2)
                安装版:window (exe、msi) linux(rmp)
                压缩版:window(rar,zip) linux(tar,tar.gz)学习时候使用
            3)运行和关闭tomcat
                    3.1 启动软件
                        a)找到%tomcat%/bin/startup.bat ,双击这个文件
                        b)弹出窗口,显示信息(不要关闭次窗口)
                        c)打开浏览器,输出以下地址
                            http://localhost:8080 http://127.0.0.1:8080

          host文件地址 C:\Windows\System32\drivers\etc\hosts
                        d)看到一只猫画面,证明软件启动成功!

3.3 关闭软件
                        a)找到%tomcat%/bin/shutdown.bat,双击这个文件即可!
                        c)打开浏览器,输出以下地址。看到“无法连接”(最好先清空浏览器缓存

     2.2 tomcat软件使用的常见问题
                1)闪退问题
                原因:tomcat软件是java语言开发的。 tomcat软件启动时,会默认到系统的环境变量中查找一个名称叫JAVA_HOME的变量。
                这个变量的作用找到tomcat启动所需的jvm。
                解决办法; 到环境变量中设置JAVA_HOME的变量
                    JAVA_HOME= C:\Program Files\Java\jdk1.6.0_30  (注意别配置到bin目录下)
                        
                2)端口占用的错误
                原因: tomcat启动所需的端口被其他软件占用了!
                解决办法:
                    a)关闭其他软件程序,释放所需端口
                    b)修改tomcat软件所需端口
                       找到并修改%tomcat%/conf/server.xml文件        
        <Connector
            port="8081"
            protocol="HTTP/1.1"
            connectionTimeout="20000"
            redirectPort="8443" />

3)CATALINA环境变量问题
                原因: tomcat软件启动后,除了查找JAVA_HOME后,还会再查找一个叫CATALINA_HOME变量,这个变量的作用是设置tomcat的根目录。
                解决办法:建议不要设置CATALINA_HOME变量。检查如果有的话,清除掉!!!
            4.3 体验tomcat软件作用
                webapps目录: tomcat共享目录。需要共享的本地资源放到此目录中。
    
            4.4 URL
                URL全名叫统一资源定位符,用于定位互联网的资源。
        
                问题: http://localhost:8081/myweb/test.html  看到文件?

http://     协议。http协议。
                localhost    域名。为了找到IP地址。
                                本地域名: localhost
                                外部域名:www.baidu.com
                8081       端口。软件监听的
                            8080: tomcat默认的端口
                            3306:mysql数据库的端口
                            1521: oracle数据库的端口。
                /myweb:   web应用的名称。默认情况下,在webapps目录下找
                /test.html  : 资源名称。  

5 Tomcat的目录结构
        |-bin: 存放tomcat的命令。
                catalina.bat 命令:
                    startup.bat  -> catalina.bat start    
                    shutdown.bat - > catalina.bat stop
        |- conf: 存放tomcat的配置信息。其中server.xml文件是核心的配置文件。
        |-lib:支持tomcat软件运行的jar包。其中还有技术支持包,如servlet,jsp
        |-logs:运行过程的日志信息
        |-temp: 临时目录
        |-webapps: 共享资源目录。web应用目录。(注意不能以单独的文件进行共享)
        |-work: tomcat的运行目录。jsp运行时产生的临时文件就存放在这里

6 Web应用的目录结构
        |- WebRoot :   web应用的根目录
                |- 静态资源(html+css+js+image+vedio)
                |- WEB-INF : 固定写法。
                    |-classes: (可选)固定写法。存放class字节码文件
                    |-lib: (可选)固定写法。存放jar包文件。
                    |-web.xml    
    
        注意:
            1)WEB-INF目录里面的资源不能通过浏览器直接访问
            2)如果希望访问到WEB-INF里面的资源,就必须把资源配置到一个叫web.xml的文件中。
练习:
            1)在webapps下建立一个mybbs目录
            2)创建两个文件
                    2.1 index.html  里面随便写内容    ,有超链接-连接到test.html    
                    2.2 test.html   里面随便写
            3)通过浏览器访问到。

7 手动开发动态资源
            7.1 静态资源和动态资源的区别
                静态资源: 当用户多次访问这个资源,资源的源代码永远不会改变的资源。
                动态资源:当用户多次访问这个资源,资源的源代码可能会发送改变。

7.2 动态资源的开发技术
            Servlet : 用java语言来编写动态资源的开发技术。

Servlet特点:
                    1)普通的java类,继承HttpServlet类,覆盖doGet方法
                    2)Servlet类只能交给tomcat服务器运行!!!!(开发者自己不能运行!!!)

Servlet手动编写步骤:
                1)编写一个servlet程序,继承HttpServlet

  1. public class HelloServlet extends HttpServlet {
  2.  
  3. public void doGet(HttpServletRequest request, HttpServletResponse response)
  4. throws ServletException, IOException {
  5.  
  6. response.setContentType("text/html;charset=utf-8");
  7. //向浏览器输出内容
  8. response.getWriter().write("这是第一个动态网站的动态资源:"+new Date());
  9.  
  10. }
  11.  
  12. }

2)找到HelloServlet类的class字节码,然后把拷贝到tomcat的一个web应用中WEB-INF/classes目录下。
                3)在当前web应用下的web.xml文件配置Servlet。

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
  5. http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  6. <servlet>
  7. <servlet-name>HelloServlet</servlet-name>
  8. <servlet-class>com.example.tomcat.HelloServlet</servlet-class>
  9. </servlet>
  10.  
  11. <servlet-mapping>
  12. <servlet-name>HelloServlet</servlet-name>
  13. <url-pattern>/hello</url-pattern>
  14. </servlet-mapping>
  15. <welcome-file-list>
  16. <welcome-file>index.jsp</welcome-file>
  17. </welcome-file-list>
  18. </web-app>

4)启动tomcat服务器,运行访问
                访问servlet:  http://localhost:8080/myweb/hello 

8 工具开发动态资源
        1)创建web project (javaweb工程)
        2)在WebRoot下建立静态资源文件,
        3)在src下建立动态资源文件
              3.1 new -> Servlet( servlet的代码生成器)
              3.2 写pacakge  -> class名 -> 修改mapping  url
        4)关联tomcat服务器
            4.1 window-> Preferences - > MyEcplise -> servers -> Tomcat 6.x (注意一定要enable)
                myeclipse配置完本地的tomcat后,勾上enable,本地的tomcat具有优先启动权。
                myeclipse是内置了tomcat服务器,很多开发人员会觉得太慢,使用不习惯,都会从外部下载新的tomcat服务器,
                      这时候需要到myeclipse里面配置,如果勾选enable则优先被程序选中并开发启动。
        5)部署web project应用。(拷贝web应用到tomcat的webapps目录下)
        6)启动tomcat服务器
        7)访问servlet            
                http://localhost:8080/Tomcat/hello

第一个项目代码见 https://github.com/huanyi0723/Tomcat/

JavaWeb 5 Tomcat的更多相关文章

  1. JavaWeb入门——Tomcat的目录结构

    JavaWeb入门——Tomcat的目录结构 摘要:本文主要了解了Tomcat的目录结构. 目录结构 打开Tomcat的目录,可以看到如下文件和文件夹: bin目录 该目录下存放的是二进制可执行文件. ...

  2. JavaWeb学习-Tomcat

    打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命令的用法如下:

  3. 深入分析JavaWeb Item2 -- Tomcat服务器学习和使用

    https://segmentfault.com/a/1190000004095363 一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件 ...

  4. JavaWeb中Tomcat与Eclipse的集成—步骤详解

    前面会简单介绍,下翻Tomcat与Eclipse的集成 一.先介绍一下应用程序的结构: 1.到目前为止应用程序物理结构有两种: C/S——Client / server:这种结构的应用,客户端与服务端 ...

  5. JavaWeb基础—Tomcat

    JavaWeb服务器:可以运行以及发布JavaWeb应用的JavaWeb容器,开发项目必须放在该容器中才可以被浏览器访问.(只能等待请求,然后做出响应) 静态资源(HTML):数据始终不变 动态资源( ...

  6. JavaWeb(三)——Tomcat服务器(二)

    一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命令的用法如下:

  7. JavaWeb(二)——Tomcat服务器(一)

    一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件. 如果想修改Tomcat服务器的启动端口,则可以在server.xml ...

  8. [原创]java WEB学习笔记01:javaWeb之tomcat的安装和配置

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  9. JavaWeb之Tomcat(2) —— Tomcat的使用

    1. 启动和关闭Tomcat (1) 打开Tomcat的安装目录,在 bin 目录下,有四个文件: startup.bat 和 startup.sh,他们分别是Windows环境下的批处理文件和Lin ...

随机推荐

  1. Linux软件的安装与卸载

    configure作用:是源码安装软件时配置环境用的 他根据你的配置选项和你的系统情况生成makefile文件 为make 做准备 最常用的参数: ./configure --prefix 作用: 不 ...

  2. DevExpress.XtraGrid.Views.BandedGrid.BandedGridView

    使用的是DevExpress.XtraGrid.Views.BandedGrid.BandedGridView 类 没有在工具箱里找到对应控件 ,绕了一下,先创建一个gridcontrol ,然后gr ...

  3. 周赛-Toy Cars 分类: 比赛 2015-08-08 15:41 5人阅读 评论(0) 收藏

    Toy Cars time limit per test 1 second memory limit per test 256 megabytes input standard input outpu ...

  4. view class source code with JAD plugin in Eclipse

    The default class viewer doesn't decompile the class file so you cannot open and check the source co ...

  5. 客服端调用自定义宿主的WCF报错"没有终结点在侦听可以接受消息的http://localhost:8085/mex。这通常是由于不正确的地址或者 SOAP 操作导致的错误"的解决方案。

    没有终结点在侦听可以接受消息的http://localhost:8085/mex.这通常是由于不正确的地址或者 SOAP 操作导致的错误. 这个错误是由于没有启动元数据交换终结点(MEX)导致的.在宿 ...

  6. IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Integrated-4.0解决方法

    IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Integrated-4.0解决方法 IIS上部署MVC网站,打开后500错误:处理程序“ExtensionlessUrl ...

  7. phpcms 01

    1 安装完成phpcms,然后打开2 C:\wamp\www\phpcms\templates 复制下面的default 目录,改名为ypzy2014 3 修改ypzy2014文件夹下的config配 ...

  8. 2016 Al-Baath University Training Camp Contest-1 F

    Description Zaid has two words, a of length between 4 and 1000 and b of length 4 exactly. The word a ...

  9. Java提高篇---List总结

    一.List接口概述 List接口,成为有序的Collection也就是序列.该接口可以对列表中的每一个元素的插入位置进行精确的控制,同时用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列 ...

  10. CSS——清除浮动

    <div id="main" class="clear"> <div id="left"> </div> ...