C/S架构:客户端/服务器模式,客户端负责与用户的交互,服务器负责数据的管理;
B/S架构:浏览器/服务器模式,浏览器负责与用户的交互,服务器负责数据的管理;
JavaWeb:Web本意为网页,这里表示互联网上供外访问的资源,分为静态资源和动态资源,JavaWeb是使用Java语言进行Web开发的统称,是解决相关Web互联网领域的技术总和;
HTTP协议:超文本传输协议,应用层协议,用来规范浏览器与Web服务器之间如何通讯的数据格式,主要涉及浏览器的请求格式和服务器的响应格式;
HTTP请求格式:请求行、请求头、空白行、请求体;
HTTP响应格式:相应行,响应头,空白行,响应体;
按F12键可以查看请求和响应信息;
Tomcat默认访问的是ROOT目录下的index.html,手动访问是hostlocal:8080/目录名、文件名;
Servlet是运行在服务器上的类,可以对浏览器发出的请求做出响应;
Servlet编程步骤三种:
Servlet的生命周期:
实例化 | Servlet容器创建Servlet的实例,第一次请求Servlet时调用构造方法创建Servlet实例,只调用一次 |
初始化 | 该容器调用init()方法,该方法只调用一次,当创建好Servlet实例后立即调用该方法实现Servlet的初始化 |
服务 | 如果请求Servlet,则容器调用service()方法,service()方法被多次调用,每当有请求时都会调用service()方法用于请求的响应 |
销毁 | 销毁实例之前调用destory()方法,该方法只被调用一次,当该Servlet实例所在的Web应用被卸载前调用该方法来释放当前占用的资源 |
不可用 | 销毁实例并标记为垃圾收集 |
GET请求三种方式:在浏览器输入URL按回车;
点击<a>超链接,<a href="hello4">测试Get请求</a>;
点击submit按钮,提交<form method="get">表单;
<form action="hello4" method="get"> <input type="submit"> </form>
GET请求特点:会将请求数据加到URL地址的后面,只能提交少量的数据,不安全;
POST请求方式:点击submit按钮,提交<form method="get">表单;(多用)
<form action="hello4" method="post"> <input type="submit"> </form>
POST请求特点:请求数据添加到HTTP协议中,可提交大量数据,安全性好;
ServletRequest接口主要用于向servlet提供客户端请求信息,可以从中获取到任何请求信息;
HttpServletRequest接口是SercletRequest的子接口,主要用于提供HTTP请求信息的功能;
Servlet接收中文乱码:浏览器在提交表单时,会对中文参数值进行自动编码,当Tomcat服务器接收到浏览器请求后自动解码,当编码方式与解码方式不一致的时候就会导致乱码;
ServletResponse接口用于定义一个对象来帮助Servlet向客户端发送响应;
HttpServletResponse接口在发送响应时提供特定于HTTP的功能;
ServletConfig接口用于描述Servlet本身的相关配置信息,在初始化期间用于将信息传递给Servlet配置对象;
ServletContext接口用于定义一组方法,Servvlet使用这些方法与它的Servlet容器通信;