Servlet中的方法
Servlet中的方法:
init方法:Servlet第一次被加载时执行,直到Servlet对象终止。
service方法:用于处理用户请求和返回响应。
destroy方法:Servlet终止时执行。
doGet方法和doPost方法:service方法中,默认会根据用户的请求,来对应的调用doGet或者doPost方法。
Servlet中的成员变量,会被所有的客户线程共享。比如访问数据库时,可以由第一个连接建立,然后不要关闭。
成员变量读写的时候,需要考虑一致性的问题。这个细节以后再记录。
request常用方法
request.getParameter("p") // 获得传入的参数p的值
request.getProtocol(); // 获得客户使用的协议
request.getServletPath(); // 得到接受用户提交信息的Servlet
request.getContentLength(); // 得到用户提交信息的长度
request.getMethod(); // 得到用户提交信息的方式
request.getHeader("User-Agent"); // 得到HTTP头中的User-Agent
request.getHeader("accept"); // 得到HTTP头中accept的值
request.getHeader("Host"); // 得到HTTP头中Host的值
request.getHeader("accept-encoding"); // 得到HTTP头中accept-encoding的值
request.getRemoteAddr(); // 得到client IP
request.getRemoteHost(); // 得到client name
request.getServerName(); // 得到server name
request.getServerPort(); // 得到server port
request.getParameterNames(); // 得到所有参数的名称
Enumeration enum = request.getParameterNames();
while (enum.hasMoreElements()){
String s=(String)enum.nextElement();
out.println(s);
}
response常用方法
response.getWriter(); // 获得输出流
response.setHeader("Refresh","2"); // 设置Refresh的值
response.sendRedirect("Night"); // 重定向
HttpSession类
HttpSession session = request.getSession(true);
session.setAttribute("name","flowaters"); // 赋值
session.getId(); // 得到会话Id
String s=(String)session.getAttribute("name"); // 获取值
session.removeAttribute("name"); // 移除值