TomCat服务器的配置及使用

一 :用户如何访问网站??

  • 1.通过一个网址(URL)访问网站(发出一个请求)
  • 2.实际上访问网站 就是访问该网站的服务器
  • 访问服务器上面的什么??(代码)
    
  • 静态资源   html div+css(不管什么用户访问  内容不会改变)
    
  • 动态资源  jsp+servlet(根据不同的用户  返回不同的内容)
    
  • JavaWEB程序员干啥的??
    
  • 不是编写服务器的(有服务器厂商写) 
    
  • 而是编写  运行在服务器上的代码
    
  • 3.通过代码(JDBC) 去访问数据库 进行增删改查
  • 4.将查询的结果 返回给服务器 你写的那堆代码中
  • 5.最后 服务器会将 查询的结果 响应回浏览器(用户)
  • 二:TomCat服务器
  • bin tomcat服务器操作指令
  •     window  startup.bat 开启服务
    
  •     Mac   startup.sh 
    
  • conf 服务器的配置文件 web.xml
  • lib 服务器自己使用的jar包 内置dbcp数据库连接池
  • webapps 存放自己的工程(将网站运行代码放上去)
  • temp 服务器运行时产生临时文件
  • logs 存放服务器的日志信息(开启关闭服务器时间 以及运行时产生错误)
  • work 服务器自己的工作文件

*三: 利用tomcat操作指令启动和关闭服务器

  • 1.打开cmd(控制台)
  • 2.切换盘符 cd(去往目录)
  •  输入d:
    
  • 3.cd(去往目录) 去往tomcat下的bin文件夹
  • 4.执行服务器开启服务的指令
  • 5.设置环境变量
  • JAVA-HOME
  • JRE_HOME
  • 6.访问Tomcat服务器的默认网页
  • 访问地址(URL)
  • http://ip地址:服务器端口号/工程的名字/访问的资源
  • 访问默认的Tomcat路径
  • http://localhost:8080
  • tomcat 默认端口号 8080
  • URL全球统一定位符
  • http://localhost:8080/test/HelloWorld.html
  • URI
  • /test/HelloWorld.html
  • 7.关闭tomcat服务 shutdown.bat

*四: Eclipse添加tomcat服务器

  • 需要修改tomcat设置
  • 关联了Eclipse 后 需要将工程存放的位置修改
  • 选第二个 关联文件夹 wtpwebapps 切记保存

*五: 服务器上的工程目录

  • 项目运行后 会将工程中的WebContent文件夹下的内容编译到服务器上(但是 WebContent不会出现)
  • 1.网页资源HTML页面(静态资源)
  • 2.META-INF配置工程的扩展应用(暂时没用)
  • 3.WEB-INF(重点)工程的所有资源
  •  classes项目代码的.class文件
    
  •  lib 工程中使用.jar包(web工程不用添加jar的路径)
    
  •  web.xml 工程配置文件(配置servlet)   
    
  • 注意:如果.html页面没有放在WebContent 文件夹下
  • 而是放到WEB-INF下  此时该资源无法通过网址来直接访问
    
  • 需要使用servlet 来间接访问
    

*六:JavaEE是java为服务器端提供的一套规范(接口)

  • 规范中有jsp servlet

  • Javax.servlet

  • 注意:需要给工程添加tomcat包(添加完成才能使用这套接口)

  • 七:servlet(小服务程序) 就是一个java中的接口

  • 1.可以接受用户(浏览器)发过来的请求

  • 2.处理请求(程序员编写)

  • 3.可以将处理完的请求 在响应回浏览器

  • 八:创建servlet有三种方式

  • 1.实现servlet接口

  • 实现接口中的生命周期方法

  • 构造方法 init service destroy(4个)

  • 注意:需要去工程中的web.xml文件中配置该Servlet的访问路径

  • public class Demo01 implements Servlet{
    //构造方法
    public Demo01() {
    System.out.println(“demo01 的构造方法”);
    }
    //初始化Servlet的配置信息
    @Override
    public void init(ServletConfig arg0) throws ServletException {
    // TODO Auto-generated method stub
    System.out.println(“init初始化方法”);
    }
    //Servlet的服务方法(处理请求方法)
    @Override
    public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
    // TODO Auto-generated method stub
    System.out.println(“service 服务方法”);
    }

    //Servlet的销毁方法
    //1.服务器停止时会调用
    //2.当应用程序从tomcat中被移除时调用
    @Override
    public void destroy() {
    // TODO Auto-generated method stub
    System.out.println(“destroy 销毁方法”);
    }
    //获取当前Servlet的配置信息
    @Override
    public ServletConfig getServletConfig() {
    // TODO Auto-generated method stub
    return null;
    }
    //获取Servlet的版本 作者信息
    @Override
    public String getServletInfo() {
    // TODO Auto-generated method stub
    return null;
    }
    }
    2.servlet创建方式 继承GenericServlet

  • 只用实现服务方法

  • 该类使用缺省适配器模式来写

  • 好处 节省代码

  • public class Demo02 extends GenericServlet{
    public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
    // TODO Auto-generated method stub
    System.out.println(“demo02 服务方法”);
    }
    }

  • 3.继承 httpservlet

  • 利用模板设计模式
    public class Demo03 extends HttpServlet {
    //重写doget
    //重写后 不要调用父类的方法 父类中的处理就是给浏览器发送错误信息
    //可以在dopost方法中 调用doget方法
    //调用doget方法 好处:不论接收请求时get还是post 写一次处理的代码就行
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    }
    //重写dopost
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    doGet(req,resp);
    }
    }

  • 注意:1.当用户第一次请求时 系统会创建出servlet对象 并且只创建一次

  •  2.当用户再次请求同一个servlet时  不会在创建新的servley对象
    
  •    而是 只会调用服务方法(service方法)
    
  •  3.当停止服务器   调用会销毁方法
    
  •  4.不管多少用户(浏览器)访问  都只会创建一个servlet
    
  •  用户通过网址访问服务器 是如何访问到想访问的Servlet?
    
  •  内部访问流程是什么??
    
  •  1.服务器会接受到用户请求过来网址
    
  •  2.通过网址中的工程名/sh-web-01
    
  •  在webapps文件中 找到对应的工程
    
  •  3.在工程中找到web.xml文件  进行读取
    
  •  4.通过用户的访问网址中/demo01(访问的资源路径)
    
  •   找到该路径所对应的servlet-name
    
  •  5.通过servlet-name找到对应的servlet-class
    
  •  6.通过servlet-class系统反射出  该类的对象
    
  •  7.调用servlet生命周期方法
    

猜你喜欢

转载自blog.csdn.net/chenyuanshengboke/article/details/82973744