JavaWeb & Tomcat

时间:2022-03-18 21:39:24

1 JavaWeb概述

Java在服务器端的应用有Servlet,JSP和第三方框架等。

Java的Web框架基本都遵循特定的路数:使用Servlet或者Filter拦截请求,使用MVC的思想设计架构,使用约定,XML或 Annotation实现配置,运用Java面向对象的特点,面向对象实现请求和响应的流程,支持Jsp,Freemarker,Velocity等视图。

常见Web服务器有 Apache(开源,占有率最高),Tomcat(开源,良好的Servlet/JSP容器),WebLogic(Oracle),WebSphere(IBM),IIS(Internet Information Services,Microsoft )。

Web开发中的资源:

  静态:HTML,CSS,JS

  动态:Servlet,JSP,PHP

2 Tomcat

2.1 Tomcat概述

Tomcat 默认端口号8080,若被占用,在 tomcat/conf/server.xml 中修改端口号。

Tomcat 部分目录结构用途

bin:存放 Tomcat 命令,包括.sh结尾的 linux 命令、.bat结尾的 windows 命令。设置 JDK 路径、Tomcat 路径等环境变量。startup/shutdown:启动/关闭 Tomcat,catalina:设置 Tomcat 内存。
lib:Tomcat所需要的 jar 包
webapps:需要发布的项目
work:JSP 编译成 Servlet 产生的代码

Tomcat 动态 web 项目目录结构:

website
  |------静态页面(HTML、CSS、JS、图片)
  |------JSP页面
  |------WEB-INF
    |-----web.xml (必须的)
    |-----classes (可选的)
    |-----lib (可选的)

2.2 Tomcat 的使用

Tomcat 项目发布的三种方式:

  1. 直接将项目复制到tomcat/webapps下
  2. 在tomcat/conf/server.xml配置tomcat的虚拟路径,<Context path="/你需要的虚拟路径" docBase="C:\实际路径"></Context>,sever.xml是核心配置文件不要改错。
  3. 在tomcat/conf/Catalina/localhost/下配置tomcat的虚拟路径,新建一个xxx.xml,xxx即你需要的虚拟路径,里面加入<Context docBase="C:\实际路径"></Context>即可。

Eclipse 中集成 Tomcat

  Eclipse 工具栏 --Window--Preferences--Server--Runtime Envrionments--Add--选择 Apache Tomcat v7.0

  控制台 Servers 窗口 --New--Server--选择 Apache Tomcat v7.0--Finish

  右键控制台 Servers 窗口刚才新建的 Server--Open--Server Locations 勾选 UseTomcat installation,Deploy path 选择 webapps

  Eclipse--New--Dynamic Web Project--Dynamic web module version选2.5--编写项目代码

  发布项目--Server 右键 Add and Remove--选择刚才编写的项目名--Finish--Server Start

网站访问寻址过程:现在本地hosts文件中查找对应域名,有则返回,没有去网络DNS服务器上查找域名对应的ip地址并返回,DNS上没有找到则报错。

Tomcat 本地虚拟主机配置:用一个任意想要的访问名称,跟本地路径绑定,访问该名称时指向绑定的本地路径。

  ①在Tomcat的server.xml中添加一个Host标签,<Host appBase="C:\项目本地路径" autoDeploy="true" name="想要的任意访问名称" unpackWARS="true"></Host>

  ②修改本地hosts文件,加入(xxx.xx.x.xxx(本地id) 想要的任意访问名称),让想要的名称指向本地ip。

   此时浏览器访问:名称/website/项目主页.html即可指向本地项目页面

  ③在Tomcat的server.xml中修改Connector标签,将默认端口号改为http的默认端口号80,这样浏览器输入地址栏不用加:8080。在server.xml添加<Context path="/"          docBase="wensite"/>,这样浏览器输入地址不用加website

  ④在conf/web.xml中的<Welcome-file-list>标签中加入<Welcome-file>项目主页.html</Welcome-file>,这样浏览器输入地址栏不用加/项目主页.html

  ⑤此时再访问想要的任意名称如xxx.com即可直接指向本地项目的web页面。