• Java之Tomcat、Dynamic web project与Servlet


    一、Tomcat配置

        Conf   Config   configration   -->配置

        Service.xml:用来配置Tomcat

    Tomcat_users.xml:用来配置Tomcat的管理账户和角色

    Web.xmlTomcat应用的配置(应用的配置从它继承而来)

    二、Service.xml结构


    主机、虚拟机---->多个(靠域名区分)

    域名: name

    程序:appBase

    是否支持自动解压WAR包        unpackWARs

    是否支持自动部署         autoDeploy

    Context[path] [docBase]

         应用虚拟目录

         Path   访问路径

         docBase   程序文件的保存位置

    一个主机可以拥有多个应用  这些应用的访问路径不同

    www.zhiyou100.com               主机

           默认:    www.zhiyou100.com/

           报名应用: www.zhiyou100.com/baoming

    毕业应用:www.zhiyou100.com/biye

    三、Tomcat默认应用

    1>Root文件夹中的应用就是默认应用

     当访问域名时,打开就是默认应用

    其他应用都需要带应用路径 如:/

    2>Tomcat自带一个管理应用

    可以查看Tomcat服务器的运行状态

    可以管理主机以及应用

    这个管理应用只能在服务器本身中访问,不能再其他电脑访问

    需要配置管理角色和用户:tomcat-users.xml中添加roleuser

    管理应用

         服务器运行状态:操作系统的信息、JVM的信息、端口的连接情况

    应用管理

         列出主机的应用、启动停止应用、卸载应用、发布应用

    主机管理

         列出所有主机、添加主机

    四、Web.xml应用的根配置

       Web-app     一个web应用

            Servlet     多个

                   默认所有应用都支持2servlet

                   Default  用来处理htmlcssjs图等静态文件

                   Jsp用来jsp转码成java并编译成class类,然后使用编译出的类生成页面(处理请求)

    Filter

    默认带了filter但未启用,比如编码转换的filter

    Session-config   : 配置了session,指定了默认超时时间30minute

    Mime-mapping : 配置mime类型,它会影响请求头和响应头中的Content-Type头。决定Tomcat是否要处理相应资源。

    五、Dynamic Web project

    第一次Dynamic Web project

    1>需要创建Tomcat运行时环境

    2>Tomcat安装位置

    3>JDK安装位置

    Preferences --> server--->Runtime

    Java Resouces /src : 是存放java源码的位置

    Build /classes: 存放生成的类

    Web Content:web应用的存放位置,可以打包成WAR

    META-INF:存放第三方jar包,jspweb资源、web.xml应用配置文件、部署描述符

    HTMLCSSJS图片在开发时,可以放在Webcontent中,部署时,如果需要可以存放其他位置(虚拟目录)

    六、JSP文件的相关设置

      设置编码为UTF-8preferences-->web-->JspFiles-->Editor-->Templates

    七、Build Path

         Dynamic web project 在编译运行过程中需要很多类或jar包,Build PathEclipse指明了项目需要类和jar的位置(也包括项目源代码的位置和项目源代码生成类的位置)

      其中最重要的是libraies里面的Apache Tamcatjdkjre

    八、修改启动浏览器

          Window-->web Browser     改成现代浏览器(谷歌/Firebox

    九、Eclipse中修改应用路径

              项目上点右键-->properties -->web projectSetting-->Context root

    Server视图(Window-->show view-->  找到主机server-->在主机下面删除应用重启

    十、EclipseTomcat的关系

          默认情况下,Eclipse会在当前workspace中收集Dynamic web project运行所需的各种资源(包含类)放入.metada.pluginsorg.eclipse.wst.server.core

    另外将Tomcat的配置文件也复制有一份到WorkSpaceserver文件夹中

    通过调用javaw来启动Tomcat安装目录中的tomcat.jar包,在这个过程中{指定classpath;指定主类}

    Run configuration --> Apache Tomcat -->我们创建Tomcat的服务器

    里面包括这些内容:Arguments  ---->启动参数        classpath--->寻找类的位置

    Source:源代码和Jar

     

     

    创建Servlet

        默认情况下,创建的Servlet类以javax.servlet.http.HttpServlet类为父类

          HttpServlet类由Tomcat提供(在servlet-api.jar包中)

      最少要选中一个doXXX的方法,通过这个方法处理请求,有2个参数

          request :请求报文  (请求行、请求头、请求体)中所有数据全部都在里面

          response:响应报文(响应行、响应体、响应头)都要通过response设置

    处理请求

          新建一个Servlet类,选择一个doXXX方法

          在这个方法中通过request参数获取请求报文中的数据

          加工之后通过response设置响应报文


    最重要是:如果想在当前页面展示数据,或者把数据传递到某一个特定的页面  需要 Servlet 和 JSP 合作完成
      把需要传递的数据通过 key-value 的形成存入到 request 中
      request.setAttribute("username", username);
      request.setAttribute("password", password);
      请求转发:把 request 和 resopne 再发送到 index.jsp 中
      request.getRequestDispatcher("/index.jsp").forward(request, response);  第一个括号中为接受的文件名

        

                                                                                                                                                       

  • 相关阅读:
    ingress-nginx-controller 504 gateway time-out 问题
    ansible的shell模板使用awk包含引号的问题
    Python selenium模块报错解决
    redis密码破解(multiprocessing的Pool多进程模式)-join方法小坑
    redis密码破解(Python使用multiprocessing分布式进程)
    redis密码破解(python使用redis模块)
    redis密码破解(python使用socket模块)
    修改云主机快照方式为live snapshot
    虚拟机重启错误,libvirtError:internal error:process exited while connecting to monitor
    如何解决高并发秒杀的超卖问题
  • 原文地址:https://www.cnblogs.com/yangxiansen/p/7860052.html
Copyright © 2020-2023  润新知