最近在复习整合javaweb部分的知识,刚好利用这个平台记录并分享自己的学习笔记,菜鸟一只,希望同道者多多指正~O(∩_∩)O~
今天回顾的是Servlet的一点入门知识。
1.什么是servlet?
简单来说,servlet就是运行在服务器端的应用程序,接受客户端的请求并将处理结果返回客户端。
2.servlet基本架构:
public class ServletName extends HttpServlet{
public void doPost(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{
}
public void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{
}
}
3.servlet配置文件:
//servlet必须在web.xml进行注册。
<servlet>
<servlet-name>ServletName</servlet-name>
<sevlet-class>servlet.ServletName</servlet-class>//包名.类名
</servlet>
<servlet-mapping>
<servlet-name>ServltetName</servlet-name>
<url-pattern>/first</url-pattern>
</servlet-mapping>
4. 过程解析:
1、 在地址栏上输入http://127.0.0.1:8090/myweb1/first,相当于发送请求给服务器
2、 服务器会根据输入的地址找到web.xml文件中的url中的first
3、 然后找到名称ServletName
4、 再根据名称找servlet.ServletName(找first应该谁来执行)
5、 找到servlet以后执行servlet方法
5.servlet生命周期:
- servlet拥有良好的生存期定义,包括加载,实例化,初始化,处理请求,服务结束。这个生存期由javax.servlet.Servlet接口的Init,service,destroy方法表达。
- web容器加载servlet,生命周期开始。servlet被服务器实例化后,容器运行其init方法进行初始化,当请求到达时,根据请求对象类型判断调用对于的doXXX方法(doPost()/doGet()),当服务器关闭的时候调用其destroy()方法,服务结束。
6. 何时调用doGet(),doPost()?
当客户端发送get请求时调用doGet()方法:
1.地址栏直接请求
2.超级链接
3.form method="get",当客户端发送post请求时调用doPost()方法:form mehod="post"
7. get请求与post请求的区别?
get请求:将信息附加在url后面,用户可以看到数据,不安全;发送的数据量较小,发送速度快。
post请求:数据信息隐藏,比较安全;发送的数据量比较大,发送速度相对较慢。