JavaWeb的技术体系
HTML是什么?
- HTML指的超文本标记语言(Hyper Text Markup Language),是一种用来描述网页的语言。超文本指的是除了可以包含文字之外,还可以包含图片、链接、音乐、视频、程序等内容。
- HTML网页的组成:
- 常用的HTML标签
- html 根标记
- head 头标记
- body 体标记
- h 标题标签
- a 超链接
- base标签
- table 表格
- form 表单
-
一个基本结构的HTML页面
-
登录页面的示例
登录功能实现-环境的搭建
涉及的技术知识点
- WEB服务器
- 动态的web工程
4.2 Web服务器
- Web服务器主要用来接收客户端发送的请求和响应客户端请求。
- Tomcat(Apache):当前应用最广的JavaWeb服务器;
- JBoss(Redhat红帽):支持JavaEE,应用比较广EJB容器 –> SSH轻量级的框架代替
- GlassFish(Orcale):Oracle开发JavaWeb服务器,应用不是很广;
- Resin(Caucho):支持JavaEE,应用越来越广;
- Weblogic(Orcale):要钱的!支持JavaEE,适合大型项目;
- Websphere(IBM):要钱的!支持JavaEE,适合大型项目
4.3 Tomcat服务器的安装及配置
- 将Tomcat的安装包解压到磁盘的任意位置(非中文无空格)
- Tomcat服务的目录结构
- 配置环境变量,方便Tomcat的启动关闭(可选)
- 新建环境变量CATALINA_HOME=解压目录
- 在Path环境变量中加入Tomcat解压目录\bin目录
- 在命令行中运行catalina run或者 startup启动Tomcat服务器,在浏览器地址栏访问如下地址进行测试
http://localhost:8080
在eclipse中配置tomcat
- 在Eclipse中配置运行环境
- 在Eclipse中创建新的Server
创建动态的web工程
- 在Eclipse中点击File ->New->Dynamic Web Project
登录功能实现-LoginServlet
5.1 涉及的技术知识点
- Servlet
- Request请求对象
- Response响应对象
- 转发
- 重定向
5.2 什么是Servlet?
- Servlet是Sun公司制定的一套技术标准,包含与Web应用相关的一系列接口,是Web应用实现方式的宏观解决方案。而具体的Servlet容器负责提供标准的实现。
- Servlet作为服务器端的一个组件,它的本意是“服务器端的小程序”。Servlet的实例对象由Servlet容器负责创建;Servlet的方法由容器在特定情况下调用;Servlet容器会在Web应用卸载时销毁Servlet对象的实例。
- 简单可以理解为 Servlet就是用来处理客户端的请求的.
5.3 Servlet开发规则
- 实际编码通过继承HttpServlet来完成Servlet的开发
5.4 Servlet类的相关方法:
- doGet Servlet中用于处理get请求的方法
- doPost Servlet中用于处理post请求的方法
- service
- 在Servlet的顶层实现中,在service方法中调用的具体的doGet或者是doPost
- 在实际开发Servlet的过程中,可以选择重写doGet以及doPost 或者 直接重写service方法来处理请求。
Servlet在web.xml中的配置
获取请求参数值
- HttpServletRequest
- 该接口是ServletRequest接口的子接口,封装了HTTP请求的相关信息,由Servlet容器创建其实现类对象并传入service(ServletRequest req, ServletResponse res)方法中。以下我们所说的HttpServletRequest对象指的是容器提供的HttpServletRequest实现类对象。
- HttpServletRequest对象的主要功能有
获取请求参数
获取项目虚拟路径
将请求转发给另外一个URL地址 [转发]
响应结果
- HttpServletResponse
- 该接口是ServletResponse接口的子接口,封装了HTTP响应的相关信息,由Servlet容器创建其实现类对象并传入service(ServletRequest req, ServletResponse res)方法中。以下我们所说的HttpServletResponse对象指的是容器提供的HttpServletResponse实现类对象
- 主要功能
使用PrintWriter对象向浏览器输出数据
实现请求的重定向[重定向]
请求转发
- Servlet接收到浏览器端请求后,进行一定的处理,先不进行响应,而是在服务器端内部“转发”给其他Servlet程序继续处理。在这种情况下浏览器端只发出了一次请求,浏览器地址栏不会发生变化,用户也感知不到请求被转发了。
- 转发请求的Servlet和目标Servlet共享同一个request对象。
- 实现转发的API
请求重定向 redirect
- Servlet接收到浏览器端请求并处理完成后,给浏览器端一个特殊的响应,这个特殊的响应要求浏览器去请求一个新的资源,整个过程中浏览器端会发出两次请求,且浏览器地址栏会改变为新资源的地址。
- 重定向的情况下,原