写在用Eclipse学习Jsp之前

本文是学习颜群老师的Javaweb教学视频的内容整理

Jsp的简要概念:嵌套在HTML中的Java代码

1.Tomcat目录结构

  • bin:可执行文件(startup.bat shutdown.bat)
  • conf:配置文件(server.xml)
  • lib:tomcat依赖的jar包
  • log:日志文件(记录出错等信息)
  • temp:临时文件
  • webapps:可执行的项目(将我们开发的项目放入该目录)
  • work:存放由jsp翻译成的java,以及编译成的class文件(jsp->java->class)

2.设置默认端口号

Tomcat默认的端口号是8080,比较常见,因此我们需要修改端口号
在/conf/server.xml中70行左右找到Connector标签

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

可以看到port属性对应值是8080,需要将其修改为其它值(端口号越大越不易冲突),我改为8888

一般网页默认的端口号为80

3.Jsp项目的目录结构

  • 项目
    • Jsp文件
    • WEB-INF
      • Classes(存放编译完成后的class)
      • Lib(存放依赖的jar包)
      • Web.xml(对项目的配置、说明,比方说访问的默认页面)

4.设置项目的初始页面

一个项目包含许多页面,需要对其初始页面进行设置
在项目/WEB-INF/web.xml中搜索welcome,可查询到如下语句

    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.xhtml</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

规定了寻找初始页面的顺序为index.html->index.xhtml-> index.htm->index.jsp
若没有名为index.html的页面,则寻找index.xhtml......

5.常见状态码

  • 404:资源不存在
  • 403:权限不足
  • 200:一切正常
  • 300/301:页面重定向(跳转)
  • 500:服务起内部错误(代码有误)

6.虚拟路径

目的:将项目配置到webapps以外的目录

假设现有项目文件夹JspProject路径为"D:\Program Files\JspProject"

  • 方式一:在conf/server.xml中设置

    在Host标签中增加Context标签,进行如下设置

    <Context docBase="D:\Program Files\JspProject" path="/JspProject" />
    

    docBase:项目实际路径

    path:虚拟路径(绝对路径或相对于webapps的相对路径)

    此方法需要重启Tomcat

  • 方式二:

    在conf/Catalina/localhost中新建“JspProject.xml”新增一行(与方式一中相同内容)

    <Context docBase="D:\Program Files\JspProject" path="/JspProject" />
    

    如果把该xml文件名改为ROOT.xml,则localhost:8888默认项目就是JspProject

7.Jsp的执行流程

Jsp->java(servlet文件)->class

从jsp到servlet是翻译,从servlet到class是编译

jsp转换成的java和class放在如下目录

D:\Program Files\apache-tomcat-8.5.56\work\Catalina\localhost\ROOT\org\apache\jsp

第一次请求服务端:会有翻译、编译的过程,速度比较慢

第二次请求服务端:直接访问class,速度快

如果服务端修改了代码,需要重新翻译、编译

8.统一字符集编码

  • jsp文件的编码:通过jsp文件中的pageEncoding属性设置

  • 浏览器读取jsp文件的编码:通过jsp文件中的content属性设置

    一般将上述统一设置成utf-8编码

  • 文本编码

    • 整个eclipse中的文件统一设置
    • 设置某一个项目
    • 单独设置一个文件

9.Eclipse开发jsp项目

①eclipse中jsp项目的目录结构

w1.png
  • WebContent:浏览器可以直接访问其中的文件
    • WEB-INF:其中的文件无法通过浏览器直接访问,只能通过请求转发来访问(存放可能出现安全问题的文件)

并不是任何的内部跳转都能访问WEB-INF,跳转有两种方式:请求转发、重定向

②配置Tomcat运行时环境

  • 添加Tomcat服务器
w2.png
  • 添加项目需要使用servlet-api.jar
    • 方法一:将tomcat/lib中的servlet-api.jar加入项目的构建路径
    • 方法二:右键项目->Build Path->Add library->Server Runtime

把这个过程称作创建一个Tomcat的实例

③Eclipse中的tomcat与本地tomcat之间的关系

在设置项目服务器的时候,相当于拷贝了一份本地的tomcat的设置,拷贝的tomcat与原本存在的互不相关,设置也是独立的

w3.png

可在eclipse项目列表找到拷贝的tomcat(新增服务器的时候自动添加)

④设置eclipse和本地的tomcat的配置一致(托管模式)

w4.png

这三个配置选项只有在第一次启动之前可修改,一旦启动之后则无法修改

半天都不知道这个图形化配置tomcat的界面如何打开:只要左边项目列表中找到servers->tomcat,双击打开就行了!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。