本文是学习颜群老师的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项目的目录结构

- WebContent:浏览器可以直接访问其中的文件
- WEB-INF:其中的文件无法通过浏览器直接访问,只能通过请求转发来访问(存放可能出现安全问题的文件)
并不是任何的内部跳转都能访问WEB-INF,跳转有两种方式:请求转发、重定向
②配置Tomcat运行时环境
- 添加Tomcat服务器

- 添加项目需要使用servlet-api.jar
- 方法一:将tomcat/lib中的servlet-api.jar加入项目的构建路径
- 方法二:右键项目->Build Path->Add library->Server Runtime
把这个过程称作创建一个Tomcat的实例
③Eclipse中的tomcat与本地tomcat之间的关系
在设置项目服务器的时候,相当于拷贝了一份本地的tomcat的设置,拷贝的tomcat与原本存在的互不相关,设置也是独立的

可在eclipse项目列表找到拷贝的tomcat(新增服务器的时候自动添加)
④设置eclipse和本地的tomcat的配置一致(托管模式)

这三个配置选项只有在第一次启动之前可修改,一旦启动之后则无法修改
半天都不知道这个图形化配置tomcat的界面如何打开:只要左边项目列表中找到servers->tomcat,双击打开就行了!