JavaWeb学习(一 ~ 三)手动创建一个jsp项目——不使用开发工具

 准备工作:官网下载tomcat非最新版的zip包,解压配置。

  

目录

一、解压后的tomcat文件夹内容说明

二、访问tomcat自带的项目

三、更改tomcat端口号

四、编写一个jsp项目

4.1 文件夹下只有一个.jsp文件

4.2 文件夹下有两个.jsp文件

五、虚拟路径

5.1 方法一:需重启

5.2 方法2:不用重启

六、Jsp执行流程

七、思维导图


 

一、解压后的tomcat文件夹内容说明

1. bin:存放可执行文件,tomcat启动和关闭的文件(startup.bat和shutdown.bat都存放在这里面)

2. conf:存放配置文件,常用的配置文件server.xml就存放在此。

3. lib:存放tomcat依赖的jar包。

4. log:存放日志文件(记录tomcat运行出错等信息)

5. temp:存放临时文件

6. webapps:存放可执行的项目,访问localhost:8080时出现的页面就存放在这里。

7. work:存放jsp翻译成的java文件以及编译成的class文件。【jsp —> java —> class】

 

二、访问tomcat自带的项目

  在配置好tomcat之后,我们通常会去访问  localhost:8080  ,若页面显示如下,则说明配置成功:

    tomcat中的可执行项目均存放在webapps中,这个页面也不例外。在webapps中,一共有5个文件夹:

  tomcat默认访问的是名为ROOT的项目。若要访问其它的项目,需要在8080后加上项目名。例如,要访问examples项目,则路径为:localhost:8080/examples。

 

三、更改tomcat端口号

  打开conf —> server.xml,搜索8080(大约在70行左右),有如下代码:

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

  只需更改8080为目标端口号即可。

说明:由于tomcat默认的端口号8080较为常见,容易引起端口号冲突,建议更改.

 

四、编写一个jsp项目

4.1 文件夹下只有一个.jsp文件

1. 在webapps中新建一个文件夹,命名为jspProject

2. 在jspProject文件夹内新建一个WEB-INF文件夹

3. 从任意一个tomcat自带的项目中复制一个web.xml,粘贴到WEB-INF文件夹内

web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!--
 Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                      http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
  version="3.1"
  metadata-complete="true">

  <display-name>jspDEMO</display-name>
  <description>
     Welcome to my project
  </description>
   
  
 <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
  

</web-app>

4. 在WEB-INF内新建两个文件夹,分别为:classes和lib

5. 在jspProject目录下新建一个index.jsp 

内容如下:

<html>
  <head>
	<title>my jsp project </title>
  </head>

  <body>
	Jsp Project
	<%
		out.print("Hello World");	
	%>	
  </body>
</html>

6. 重启tomcat,访问路径:localhost:8080/jspProject

4.2 文件夹下有两个.jsp文件

1. 新建一个index2.jsp,内容稍做更改

内容为:

<html>
  <head>
	<title>my jsp project 2</title>
  </head>

  <body>
	Jsp Project 2
	<%
		out.print("Hello World");	
	%>	
  </body>
</html>

2. 重启tomcat,访问jspProject,发现显示的依然是index.jsp的内容:

3. 若要访问到index2.jsp,需要在路径后添加一个"/index2.jsp",如图:

说明tomcat默认访问名为index的jsp文件。若要让tomcat默认访问Index2.jsp,需要进行配置

4.  打开jspProject —> WEB-INF —> web.xml,在其中加上如下语句:

<welcome-file-list>
    <welcome-file>index2.jsp</welcome-file>
</welcome-file-list>

5. 重启后访问localhost:8080/jspProject,发现访问的是Index2.jsp

 

五、虚拟路径

在localhost:8080后添加的"/jspProject"是相对于webapps的相对路径,只有当项目实际存在于webapps中的时候,访问此路径才能显示出项目页面,而当项目不存在于webapps中是,若要访问,需配置虚拟路径。

5.1 方法一:需重启

1. 将jspProject剪切到另一个路径位置,例如,我将其放在D盘根目录下

此时访问localhost:8080/jspProject,将显示404(资源不存在)

 

2. 打开conf —> server.xml,在<Host><Engine>下添加如下代码:

<Context docBase="D:\jspProject" path="/jspProject" />

如图:

此项配置的意思是,当访问/jspProject的时候,实际访问的是D:\jspProject

docBase指的是实际路径,而path指的是虚拟路径

path可以是相对路径也可以是绝对路径,一般而言,我们都写的是相对路径

3. 配置完成后重启tomcat,访问localhost:8080/jspProject,发现可以访问了:

5.2 方法2:不用重启

1. 先将原来在server.xml中配置的语句删掉,或者像这样注释掉:

2.  在conf —> Catalina —> localhost 中新建 一个文件,命名为jspProject.xml(命名与项目名相同),内容为:

<Context docBase  =  "D:\jspProject" path  =  "/jspProject" />

访问localhost:8080/jspProject,可以看到页面。

 

六、Jsp执行流程

        客户端浏览器在第一次访问服务端的时候,对服务端发起请求,服务端将jsp翻译为java文件,再编译成class文件后将class文件响应给客户端浏览器,所以Java的网页第一次访问会比较慢;而第二次访问的时候,会直接访问class文件。

注意:如果代码被修改了,访问的时候会重新翻译和编译。

jsp翻译的java文件和Java文件编译后的class文件存放于work中。

打开Java文件,发现其继承于HttpBase,这实际上是一个servlet文件

        而我们所写的jsp的文件内容其实在这里

        jsp和servlet是可以相互转换的。

 

 

七、思维导图

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值