开发者学堂课程【Java Web 开发-Web 应用、Tomcat、HTTP 请求与响应:创建 JavaWeb 应用(静态和动态)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/575/detail/7958
创建 JavaWeb 应用(静态和动态)
内容简介:
一、创建静态应用
二、创建动态应用
一、创建静态应用
1.创建项目目录
在 webapps. 目录下创建一个目录 hello1(命名必须不包含中文和空格),这个目录称之为项目目录。
hello: 应用目录,hello 就是应用的名称。
2. 创建 html 文件
在项目目录下创建一个 html 文件,命名 index.html
index.html: 应用资源。
应用下可以有多个资源,例如 css、is、html、jsp 等,也可以把资源放到文件夹中,例如:hello\htm\index.html, 这时访问 URL 为:http: //localhost: 8080/hello/html/index.html; 写如下代码:
<html>
<head>
<title> hello - html
</head>
<body>
<h1> Hello1
</body>
</html>
3. 启动 Tomcat
运行 Tomcat,这时我们的项目处发生了更改,所以要重新启动 Tomcat,Tomcat 是经常需要重新启动的。
4. 访问地址
打开浏览器访问
http://localhost:8080/hello/index.html
二、创建动态应用
1.创建项目目录
在 webapps 目录下创建一个项目目录,此处命名为 hello2;
2.在项目目录下创建如下内容
(1)WEB-INF 目录
在 WEB-INF 目录下创建 web.xml 文件(web.xml 文件的内容,我们可以去其他项目中借)。
WEB-INF: 这个目录名称必须是大写,这个目录下的东西是无法通过浏览器直接访问的,也就是说到这里的东西是安全的。
web.xml: 应用程序的部署描述符文件,可以在该文件中对应用进行配置,例如配置应用的首页:
<welcome-file-list>
<welcome-file> index.htmk/welcome-file></welcome-file-list>
在 ROOT 文件下找到 WEBINFweb.xml 复制粘贴到 Hello2 的中,保留 xml 文件的文档声明,根源处。文档声明往往有三个属性可以使用。
保留代码如下:
<?xml version
=
"1. 0"encoding
=
"IS0-8859-1
”?
>
//文档声明
<
web-appxmins="http://java.sun.com/xml/n
s
/javaee"
xm
l
ns:xsi
=“
http://www.w3.o
r
g/2001/XMLSchema-instance"
xs1:schemaLocation
=
"http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xad"
version="3. 0"
/web-app>
(2) 创建静态或动态页面 index.html,内容代码如下:
<html>
<head>
<title> hello2- html
</head>
<body>
<h1> Hello2
</body>
</html>
3. 启动 Tomcat
4.接下来打开浏览器访问 http://localhost:8080/hello2/index.html
此时并没有看出什么区别,后期可以加动态资源。
5.在项目目录 hello2 下创建 index.jsp(动态资源)
代码如下:
<%@page pageEncoding="utf-8"%>
<html>
<head>
<title> hello2 -html
</head>
<body>
<h1> Hello2
<h3>
$ {header ['User-Agent'] }</h3>
</body>
</html>
6. 重启 Tomcat 访问网站
http://localhost:8080/hello2/index.jsp,得到如下值:
Hello2
Mozilla/4. 0 (compatible; MSIE 8. 0;Windows NT 6. 1;
WOW64; Trident/4. 0; SLCC2;
. NET CLR 2. 0. 50727; . NET CLR 3. 5. 30729;
. NET CLR3.0.30729; Media Center PC 6.0;
InfoPath. 2; . NET4. 0C; . NET4. 0E)
输入的为变量,输出的为值,MSIE 8.0 表示用的浏览器为8.0,Windows NT 6.1 表示W7 系统。