Servlet
放在web程序下的问价都可以被用户通过url访问直接获取到,如果不想用户看到,可以放到WEb-INF目录下面。
ServletRequest中的方法:
int len=req.getContentLength();//请求体的长度 String type=req.getContentType();//MIME类型 String para=req.getParameter("key"); String prot=req.getProtocol();//HTTP请求的协议和版本号+ Enumeration<String> paras=req.getParameterNames(); Enumeration<String> values=req.getParameterValues(); Map<String ,String[]> map=req.getParameterMap();
String URI=req.getContextPath();
javax.servlet.http.Cookie[] cookies=req.getCookies();
String header =req.getHeader("");
String method=req.getMethod();
String queryString=req.getQueryString();
HttpSession session=req.getSession();
ServletResponse中的方法
PrintWriter writer=resp.getWriter(); OutputStream outputStream=resp.getOutputStream();
在写数据之前一般调用 SetContextType()方法,告诉前面内容的类型。
ServletConfig。
可以看作是一个类里面的配置的信息,每一个Servlet有一个ServletConfig。
在容器初始化Servlet的时候,会将ServletConfig对象传递给Servlet的init方法。
通过 getInitparameter()获得初始化的参数的值,这些值可以通过web.xml写入,也可以在注解中声明
@WebServlet(urlPatterns = "/Se", initParams = { @WebInitParam(name = "lz",value = "11"), @WebInitParam(name = "lz1",value = "211") }) <servlet> <servlet-name>re</servlet-name> <servlet-class>Servlet.redirect</servlet-class> <!-- 只有这个Servlet能用--> <init-param> <param-name>lzemail</param-name> <param-value>lz@lz.com</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>re</servlet-name> <url-pattern>/red</url-pattern> </servlet-mapping>
在servlet的配置当中,<load-on-startup>5</load-on-startup>的含义是:
标记容器是否在启动的时候就加载这个servlet。当值为0或者大于0时,表示容器在应用启动时就加载这个servlet;
当是一个负数时或者没有指定时,则指示容器在该servlet被选择时才加载。正数的值越小,启动该servlet的优先级越高。
<servlet>
<servlet-name>initservlet</servlet-name>
<servlet-class>com.bb.eoa.util.initServlet</servlet-class>
<init-param>
<param-name>log4j-init-file</param-name>
<param-value>config/log.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>