引擎容器,主机host容器,servlet容器,context容器,一个context对应一个web工程
创建一个servlet步骤:
第一:继承自HttpServlet
第二:重写doGet()和doPost()方法
第三:在web.xml中注册servlet
、
如下 需要把编码设置放置在打印之前,才会有效
resp.setContentType("text/html;charset=utf-8");
PrintWriter jiu=resp.getWriter();
jiu.println("<strong>我是servlet</strong>");
顺便一提,在eclipse里面都有filter,servlet,listen的快速创建方式,而且不需要在 web.xml 文件里进行注册,他会采用注解的方式。
点击链接后,从xml配置文件寻找url-pattern,根据name寻找类。
、
jsp是由servlet演变的,所以jsp再被请求的时候,先被转化为servlet源码文件,然后再转化为字节码文件,实例并初始化后,调用他的service方法。servlet是常驻内存的,一旦有用户请求,就会创建一个线程,调用servlet处理。
总的来说,装载分为三种,如果在xml文件里进行注册并且添加代码
<load-on-startup>1</load-on-start-up>
那么在服务器启动的时候就会自动装载,另外,如果是注解的方式,也可以
@WebServlet(loadOnStartup=1)
的方式来进行。
然后就是用户访问和修改都会造成构造方法和初始化方法再次调用,被装载。
这是在Servlet里面获取jsp的内置对象。第一个不是out对象,是PrintWriter的一个实例,两者之间的区别,在jsp笔记里面查看。
然后就是绝对路径与相对路径,在Servlet里面使用response.sendDirect重定向方法,“/”是相对于客户端而言,并不是指项目的根目录。
而项目的根目录是web-content,但虚拟路径可以更改。
绝对路径都是相对于项目的根目录而言。
在eclipse里面创建时,可以直接通过注解来配置。
this.getInitParameter()
来获取配置的参数。