1.Web分类
- 静态web
- html这样的静态网页,只展示预先设定好的内容
- 每个用户看到的内容是一样的
- 不连接数据库,无法持久化数据(比如注册)
- 动态web
- 动态展示内容
- 每个用户看到的内容是不一样的,比如会有个性化推荐
- 连接数据库,可以持久化数据
- 技术栈:Serverlet/JSP, ASP, PHP
在java中,动态web资源开发的技术叫做JavaWeb
Web应用程序:可以提供浏览器访问的程序
这是一个简单的web程序请求和响应的流程图:
- 当请求静态资源时,直接访问文件系统
- 当请求动态资源时,需要访问动态web资源和数据库
2.Web服务器常见的技术:
ASP(Active Server Pages):
- 一种服务器端脚本技术,由微软公司开发
- 在HTML中嵌入了VB脚本,导致每个页面都有几千行的业务量
- 后期维护成本高
PHP(Hypertext Preprocessor):
- 一种开源的服务器端脚本语言
- 开发速度快,功能强大,跨平台
- PHP的语法类似于C语言,易于学习和使用
- 局限性:不能承载很高的访问量
JSP(JavaServer Pages):
- 一种基于Java的服务器端脚本技术
- 允许开发人员在HTML页面中嵌入Java代码,用于生成动态Web页面。
- JSP页面可以与Java Servlets一起使用,实现动态内容的生成和交互性的增强(B/S架构)
- 可以做到高性能、高并发、高性能
3.Web服务器:Tomcat
Tomcat是一个开源的、跨平台的Web应用服务器,它支持Java Servlet和JavaServer Pages(JSP)等技术,可以作为Java Web应用程序的运行环境。
Tomcat可以直接在官网下载:Apache Tomcat® - Welcome!
解压后可以看到Tomcat 的目录,包含了可执行脚本,配置文件,库,日志等
其中webapps就是web网站的资源文件,包含网页、图片等资源
双击bin/startup.bat,可以启动服务器。
接着在浏览器中访问localhost:8080,可以得到默认的主页:
这个localhost映射到了本地主机
因为在电脑的C:\Windows\System32\drivers\etc\hosts这个文件中,配置了映射:
127.0.0.1被称为“本地主机地址”或“回送地址”。它是指本机的网络接口,用于在计算机上运行的应用程序与本地主机通信。
在这个文件中也可以新增映射,比如 127.0.0.1 Alice,这样下次访问Alice:8080也可以访问Tomcat服务器了。
而8080是Tomcat的端口号,这个可以在config/server.xml中修改,比如改成8082,然后访问的时候输入localhost:8082
当我们在浏览器中输入一个网址时:
1)系统会先在电脑的C:\Windows\System32\drivers\etc\hosts这个文件中,检查是否有该域名的映射,若有,则直接返回对应的IP地址
2)若没有,则发送域名解析请求给DNS服务器
3)若域名解析成功,则返回IP地址,否则返回找不到该网址
4.用Tomcat发布一个web网站
上文说到了web网站存放在了webapps这个文件夹中,所以在该目录下,新建一个文件夹Freya(代表这个新网站的文件夹),并且复制webapps\ROOT\WEB-INF\web.xml文件。
接着在webapps\Freya中新建一个index.html,因为是测试,所以这个网页的内容可以直接从网上复制一份html代码。
接着在浏览器中访问http://localhost:8080/Freya/
可以看到这就是一个新的web网站的主页
而一个网站一般的结构是: