servlet结构:
普通的java类 继承HttpServlet(http协议相关的服务)extends GenericServlet(属性一般)(通用类)implements Servlet(接口),ServletConfig(接口)
创建好这个servlet继承很多类,实现很多接口
2. Servlet: 接口 常用方法: void init() 初始化方法 void init(ServletConfig config) servlet 初始化方法 void service(ServletRequst request,ServletResponse response) servlet 的服务方法 void destroy() servlet 的销毁方法 ServletConfig getServletConfig() 获取 ServletConfig 对象 3. HttpServlet: 抽象类 protected void doGet(HttpServletRequest req, HttpServletResponse resp) 处理 get 请求 protected void doPost(HttpServletRequest req, HttpServletResponse resp) 处理 post 请求 protected void service(HttpServletRequest req, HttpServletResponse resp) 处理所有的请求方式 4 HttpServletRequest: 请求对象 当用户发送的请求到达 servlet 容器时,包含数据的请求将被转换为 HttpServletRequest 对象,对请求数 据的处理工作便由 HttpServletRequest 对象完成。 方法: public String getParameter(String name) 返回指定 name 对应的参数的值 public String[] getParameterValues(String name) 返回指定 name 对应的一组参数值,返回值是数 组 public Enumeration getParameterNames() 返回所有客户请求的参数名 String getMethod() 获取请求的方法 (GET,POST) String getRequestURI() 获取请求的 uri StringBuffer gerTrequestURL() 获取请求的 URL 5. HttpServletResponse: 响应对象 把服务器对客户端浏览器的所有响应内容封装到该对象里面 常用方法: void setContentType(String str) 专门设置 content-type 这个响应头 PrintWriter getWriter() 获取一个字符方式的响应 输出流 ServletOutputStream getOutputSttream() 获取一个字节方式的响应 输出流 6. ServletConfig : 接口 常用方法: getInitParameter(String param) 根据参数 name 值返回对用的初始化参数值 一个名称 对应一个值 getInitParameterNames(String param) 根据参数名返回该 name 对应的所有的参数值 一个名 称对应多个值 getServletContext() 返回一个 ServletContext 对象 getServletName() 返回当前 servlet 的名称,即 @WebServlet 的 name 属性 值,如果没配,返回全限命名 注意: 一个 Servlet 对应一个 ServletConfig 对象 请求方式:get post put delete options method=get post get请求: method=“get” or 浏览器直接敲url也属于get请求,执行doGet()方法 get请参数通过浏览器url来传输 doGet()处理的是get请求 数据不安全 传输量小 post请求: method=“post” post请求数据走请求体doPost()方法处理的是post请求
service()可以处于所有请求
请求:
- 请求行 联系方式 信封
- 请求头
- 请求体 信的正文
servlet是个过程,又开始,有结束。init() service( ) destory()
servlet加载时机该servlet什么时候被加载,就是init()执行时机
loadonStartup=整数
零、正数:启动时加载 负数:访问的时候加载
(数值越大越优先执行 )



