作用:
String servletName = config.getServletName();2)获取Servlet的初始化参数
<servlet> <servlet-name>ServletConfServlet</servlet-name> <servlet-class>com.atguigu.servlet.ServletConfServlet</servlet-class> <init-param> <param-name>username</param-name> <param-value>admin</param-value> </init-param> </servlet>获取
String initParameter = config.getInitParameter("username");
ServletContext servletContext = config.getServletContext();
//Web应用的初始化参数是全局的,每个Servlet都可以拿到 String initParameter2 = servletContext.getInitParameter("encode");
前提是已经在web.xml文件中进行了配置
<!-- 设置当前Web应用的初始化参数 --> <context-param> <param-name>encode</param-name> <param-value>utf-8</param-value> </context-param>
//Web应用的初始化参数是全局的,每个Servlet都可以拿到 String initParameter2 = servletContext.getInitParameter("encode");
String realPath = servletContext.getRealPath("/index.html");
3)作为一个域对象存在
String userName = request.getParameter("username"); String password = request.getParameter("password");
String contextPath = request.getContextPath();
3)转发
//获取转发器 RequestDispatcher requestDispatcher = request.getRequestDispatcher("success.html"); //转发 requestDispatcher.forward(request, response);4)作为一个域对象存在
PrintWriter writer = response.getWriter(); writer.write("<h1>Response Success!</h1>");
response.sendRedirect("success.html");
①转发发送一次请求;重定向发送两次请求
②转发浏览器地址栏无变化;重定向浏览器地址栏有变化
③转发可以访问WEB-INF下的资源;重定向不可以访问WEB-INF下的资源
④转发可以共享request域对象中的资源;重定向不可以共享request域对象中的资源
//改操作一定要在第一次获取请求参数之前 request.setCharacterEncoding("utf-8");
//设置响应头 response.setHeader("Content-Type", "text/html;charset=utf-8"); //设置ContentType response.setContentType("text/html;charset=UTF-8");