JavaWeb
基本概念
- web开发:
- web网页的意思
- 静态web:提供给所有人看的数据始终不会发生变化
- html
- css
- 动态web:提供给所有人看的数据始终会发生变化,不同时间地点看到的数据不一样
- 淘宝等,几乎所有的网站
- 技术栈:Servlet/JSP,ASP,PHP
- 在Java中,动态web资源开发的技术统称为JavaWeb
web应用程序
- 定义:可以提供浏览器访问的程序
- 多个html文件,这些web资源可以被外界访问,对外界提供服务
- 能访问到的任何一个页面或者资源,都存在于这个世界的某个角落的计算机上
- URL:统一资源定位器,它是浏览器用来检索 web 上公布的任何资源的机制。URL 无非就是一个给定的独特资源在 Web 上的地址。理论上说,每个有效的 URL 都指向一个唯一的资源。
- 这些统一的web资源被放到一个文件夹下,就是web应用程序(依赖Tomcat服务器来进行访问)
- web应用的组成
- html, css, js
- jsp, servlet
- java程序
- jar包
- 配置文件(Properties)
- web应用程序编写完毕后,若想提供给外界访问,需要一个服务器来统一管理
静态web
- *.htm, *.html这些都是网页的后缀,如果服务器上一直存在这些东西,我们就可以直接进行读取
JavaWeb简介【感谢狂神说JAVA】JavaWeb - 缺点:
- web页面无法动态更新,所有用户看到的都是同一个页面
- 例如使用轮播图,点击特效,形成伪动态
- 实现技术:JavaScript(用的最多)、VBScript
- 无法与数据库交互,数据无法持久化,用户无法交互
- web页面无法动态更新,所有用户看到的都是同一个页面
动态web
- 定义:页面会动态展示,展示的效果因为不同的行为而不同
- 缺点:
- 假如服务器的动态web资源出现错误,我们需要重新编写我们的后台程序,重新发布(停机维护)
- 优点:
- 可以动态更新,用户可以看多多种页面
- 可以与数据库交互,可以进行数据持久化,比如注册、商品信息的存储、用户信息的存储
web服务器
- 动态web技术栈的服务器编程语言:
- ASP:
- 微软,国内最早流行的服务器就是ASP
- 在HTML中嵌入了VB的脚本,ASP+COM;
- 在ASP开发中,基本一个页面都有几千行的业务代码,页面混论,维护成本高
- JSP:本质上是Servlet(服务器)
- sun公司主推的B/S架构,主要基于java语言(所有大公司和开源的组件都是Java写的)
- 可以承载三高问题(高并发、高可用、高性能)带来的影响
- 语法像ASP,加强市场的强度
- B/S:浏览和服务器;C/S:客户端和服务器
- php:
- php开发速度很快,功能很强大,跨平台,代码很简单
- 但是无法承载大访问量的情况,有局限性
- ASP:
- web服务器初探
- 定义:一种被动的操作,用来处理用户的一些请求和给用户一些响应信息
- 比如:
- IIS,微软的,ASP,Windows中自带的
- Tomcat:(3-5年之后,可以尝试手写Tomcat服务器)
- 是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
- Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,是最优选择
- Tomcat 实际上运行JSP 页面和Servlet。目前Tomcat最新版本为10.0.5**。**
- 下载Tomcat
- 安装或解压 tomcat官网
- 了解配置文件及目录结构:
- 点击bin目录下的shutup.bat启动tomcat服务器
- 浏览器中打开localhost:8080,出现tomcat页面,安装成功
- 点击shutdown.bat,关闭
- 可以配置一下环境变量
- 作用
- 可能碰到的问题
- java环境变量没有配置
- 闪退问题:需要配置兼容性
- 乱码问题:配置文件(server.xml)中设置
- 常用的默认端口号:
- tomcat:8080
- MySQL:3306
- http:80
- https:443
- 网站应该存在的结构
- webapps:tomcat服务器的web目录
- ROOT
- xxxxx:网站的目录名
- WEB-INF
- classes:Java程序
- lib:web应用所依赖的jar包
- web.xml:网站配置文件
- index.html:默认的网站
- static
- css
- style.css
- js
- img
- css
- ……
- WEB-INF