Servlet和JSP学习⼼得(⼀)
前⾔
1. Java Servlet 技术,简称Servlet,是Java中⽤于开发Web应⽤程序的基本技术。Servlets是指在Servlet容器中运⾏的Java类。
Servlet容器或Servlet引擎,就像是⼀个Web服务器,但它能够⽣成动态的内容,⽽不只是提供静态的资源。
2. Servlet是⼀个Java程序。⼀个Servlet应⽤程序经常包含⼀个或多个Servlet。JSP页⾯也要被翻译成Servlet,并进⾏编译。
3. Servlet应⽤程序是在Servlet容器中运⾏,它不能⾃动运⾏。
4. Web服务器与Web客户端之间通过双⽅熟悉的⼀种语⾔进⾏通信,即超⽂本转移协议(HTTP)。
5. Servlet和JSP只是Java EE众多技术中的两种。运⾏Java EE应⽤程序时,需要Java EE容器,但是Java EE容器⽤来部署
Servlet/JSP程序会显得杀鸡⽤⽜⼑,⼀般都是采⽤Servlet/JSP容器都卓卓有余啦,如Tomcat ,Jetty(注:这两个都不属于Java EE容器)。
6. 并⾮所有的URL都⽤HTTP,如ftp。
简单介绍
1. Servlet接⼝⽅法:
主要接⼝:
init(初始化),service(请求服务),destroy(销毁),
次要接⼝:
getServletInfo(返回Servlet的描述), getServletConfig(返回由Servlet容器传给init⽅法的ServletConfig);
流程:
仅当servlet容器第⼀次接到访问该servlet请求的时候才会进⾏init操作,之后都是只进⾏service操作。
2. @WebServlet(name=“XXX”, urlPatterns = {"/myUrl"}) 这个注解⽤来声明⼀个Servlet,并告诉容器它的URL(urlPatterns
属性);name属性可选,⼀般都⽤类名。
3. ServletRequest接⼝常见⽅法:
public java.lang.String getParameter(java.lang.String name) 返回制定请求参数的值。
次要可常⽤⽅法:
getParameterNames,getParameterMap,getParameterValues;
4. ServletResponse常见⽅法:
getWriter:返回可以将⽂本传给客户端的Java.io.PrintWriter,默认使⽤编码ISO-8859-1;
getOutputStream:⽤来传输⼆进制数据,如⽂件下载。
5. ServletConfig:
getServletContext:可以从Servlet内部获取ServletContext;
还可以使⽤@WebServlet的initParams提供键值初始化;
ServletContext表⽰Servlet应⽤程序,每⼀个Web应⽤程序都只有⼀个context
6. GenericServlet:
实现了Servlet和ServletConfig的抽象类,抽出了⼀个⽆参init⽅法⽅便⽤户覆盖实现个性化。
7. HttpServlet:
GenericServlet抽象类的继承类,带有HttpServletRequest(继承ServletRequest)和HttpServletResponse(继承
ServletResponse)对象;
覆盖了GenericServlet中的service⽅法,并添加了⼀个新参数的service⽅法;
新的service⽅法会查看通常⽤来发送请求的七种⽅法之⼀(doGet,doPost等等),此时变成了get,post等⽅法的重写。
8. 部署描述符:
就是框架中常见的xml⽂件,⽤于配置启动Servlet,servlet路径,初始参数等等。
课余点
1.
2. xml⽂件(部署描述符)作⽤:
1.可以包含@WebServlet中没有的元素,如load-on-startup;
2.当需要修改配置值或修改初始参数时,不需要重新编译servlet类;
3.允许覆盖servlet注解中制定的值,例如访问路径。
java和jsp以上就是本⼈第⼀章的读后感,servlet和JSP就是Java发展史中的⼀个关键节点,犹如电⼒时代中发现电⼀样重要,真的很有必要抽时间去细看。
本⼈对Java了解有限,若有不当之处欢迎⼤佬指出。谢谢!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。