老杜 JavaWeb 讲解(二)——实现一个简单的webapp(无Java代码)
老杜 JavaWeb 讲解
对应视频:
(四) 实现一个基本的web应用(无Java)
4.1 基本步骤
-
找到CATALINA_HOME\webapps目录
因为所有的webapp要放到webapps目录下。(没有为什么,这是Tomcat服务器的要求。如果不放到这里,Tomcat服务器找不到你的应用。)
-
在CATALINA_HOME\webapps目录下新建一个子目录,起名:oa
这个目录名oa就是你这个webapp的名字。
-
在oa目录下新建资源文件,例如:index.html
编写index.html文件的内容:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>index page</title> </head> <body> <h1>my index page</h1> </body> </html>
-
启动Tomcat服务器
-
打开浏览器,在浏览器地址栏上输入对应的URL
(http://127.0.0.1:8080/oa/index.html)
运行结果:
http://127.0.0.1:8080/oa/index.html
产生疑问:
我们在浏览器上直接输入一个URL,然后回车。这个动作和超链接一样吗?
答案:
一样的,其实在一些支持超链接的软件或页面中,点击http://127.0.0.1:8080/oa/index.html即可直接访问对应的页面。
比如QQ聊天窗口或者Typora等软件。
在页面中,可以通过这种方式实现页面跳转。
4.2 静态资源与动态资源
-
访问http://127.0.0.1:8080/oa/userList.html ,可以展示一个用户列表页面。但是这个用户列表页面是写死在HTML文件当中的。这种资源我们称为静态资源。怎么能变成动态资源。显然需要连接数据库。
userList.html:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>user list page</title> </head> <body> <table border="1px" align="center" width="50%"> <tr> <th>no</th> <th>username</th> </tr> <tr> <th>1</th> <th>扎古</th> </tr> <tr> <th>2</th> <th>元祖</th> </tr> <tr> <th>3</th> <th>红异端</th> </tr> <tr> <th>4</th> <th>量产机</th> </tr> </table> </body> </html>
页面显示:
-
连接数据库需要JDBC程序,也就是说需要编写Java程序连接数据库,数据库中有多少条记录,页面上就显示多少条记录,这种技术被称为动态网页技术。(动态网页技术并不是说页面中有flash动画。动态网页技术是说页面中的数据是动态的,根据数据库中数据的变化而变化。)
4.3 请求和响应中的角色
一个web应用请求和响应的过程,有什么角色参与其中,他们之间又有多少个协议?
角色:
- 浏览器开发团队开发的浏览器
- WEB Server团队开发的服务器(Tomcat、Jetty、WebLogic、JBOSS、WebSphere....)
- DB Server的开发团队开发的数据库(DB Server这个软件也是太多了:Oracle、MySQL.....)
- webapp的开发团队(WEB应用是我们做为JavaWEB程序员开发的)
协议:
- webapp的开发团队 和 WEB Server的开发团队 之间有一套规范: JavaEE规范之一Servlet规范。
- Servlet规范的作用是什么?
- WEB Server 和 webapp解耦合。
- Servlet规范的作用是什么?
- Browser 和 WebServer之间有一套传输协议:HTTP协议。(超文本传输协议。)
- webapp开发团队 和 DB Server的开发团队之间有一套规范:JDBC规范。
4.4 Servlet是什么规范?
- 遵循Servlet规范的webapp,这个webapp就可以放在不同的WEB服务器中运行。(因为这个webapp是遵循Servlet规范的。)
Servlet规范包括什么呢?
- 规范了哪些接口
- 规范了哪些类
- 规范了一个web应用中应该有哪些配置文件
- 规范了一个web应用中配置文件的名字
- 规范了一个web应用中配置文件存放的路径
- 规范了一个web应用中配置文件的内容
- 规范了一个合法有效的web应用它的目录结构应该是怎样的。
- .....
文理双修:
3.《青玉案 元夕》宋朝·辛弃疾
东风夜放花千树,更吹落,星如雨。宝马雕车香满路。凤箫声动,玉壶光转,一夜鱼龙舞。
蛾儿雪柳黄金缕,笑语盈盈暗香去。众里寻他千百度,蓦然回首,那人却在,灯火阑珊处。
译文:
像东风吹散千树繁花一样,又吹得烟火纷纷,乱落如雨。豪华的马车满路芳香。悠扬的凤箫声四处回荡,玉壶般的明月渐渐西斜,一夜鱼龙灯飞舞笑语喧哗。
美人头上都戴着亮丽的饰物,笑语盈盈地随人群走过,身上香气飘洒。我在人群中寻找她千百回,猛然一回头,不经意间却在灯火零落之处发现了她。