标签:
public class Servlet01_ServletConfig extends HttpServlet { public Servlet01_ServletConfig() { System.out.println("实例化~~~~~~~~~~"); } @Override public void init() throws ServletException { System.out.println("初始化啦-~~~~~~~~~~"); } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ServletConfig config = getServletConfig(); response.getOutputStream().write(config.getInitParameter("cgx").getBytes()); response.getOutputStream().write("<br/>hahawoshi 01 <br/>".getBytes()); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } @Override public void destroy() { System.out.println("销毁了~~~~~~~~~~~"); } }
public class Servlet02_ServletContext extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Enumeration<String> names = getServletContext().getInitParameterNames(); while(names.hasMoreElements()) { String name = names.nextElement(); String value = getServletContext().getInitParameter(name); System.out.println(name + ">>>" + value); } //COMM--setAttribute---------ServletContext域间访问------------------- ServletContext context = getServletContext(); context.setAttribute("web", "haha...."); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } -------------------------getAttribute()------------------------------- public class Servlet02_GetServletContext extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //Context域通信 String value = (String)getServletContext().getAttribute("web"); response.getOutputStream().write(value.getBytes()); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
public class Servlet03_Dispatcher extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { RequestDispatcher relay = getServletContext().getRequestDispatcher("/servlet/Servlet01_ServletConfig"); // relay.forward(request, response); relay.include(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 方式1,通过ServletContext获取资源路径 // testGetRealPath(response); // 方式2,通过ResourceBoudle获取资源路径,只能获取src资源,一般只用写基名即可 // testResourceBundle(response); // 方式3,通过ClassLoader类加载器获取资源路径 testClassLoader(response); } /** * @param response * @throws IOException */ private void testClassLoader(HttpServletResponse response) throws IOException { ClassLoader loader = Servlet04_GetResource.class.getClassLoader(); // InputStream is = loader.getResourceAsStream("com/itheima/day07Home/cfg.properties"); // InputStream is = loader.getResourceAsStream("cfg2.properties"); InputStream is = loader.getResourceAsStream("../cfg3.properties"); Properties prop = new Properties(); prop.load(is); response.getOutputStream().write(prop.getProperty("p").getBytes()); } /** * @param response * @throws IOException */ private void testResourceBundle(HttpServletResponse response) throws IOException { // ResourceBundle rb = ResourceBundle.getBundle("com.itheima.day07Home.cfg"); ResourceBundle rb = ResourceBundle.getBundle("cfg2"); response.getOutputStream().write(rb.getString("p").getBytes()); } private void testGetRealPath(HttpServletResponse response) throws IOException, FileNotFoundException { // String absolutePath = getServletContext().getRealPath("WEB-INF/classes/com/itheima/day07Home/cfg.properties"); // String absolutePath = getServletContext().getRealPath("WEB-INF/classes/cfg2.properties"); String absolutePath = getServletContext().getRealPath("WEB-INF/cfg3.properties"); Properties prop = new Properties(); prop.load(new FileInputStream(absolutePath)); response.getOutputStream().write(prop.getProperty("p").getBytes()); System.out.println(prop.getProperty("p")); }
public class Servlet05_Download extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String path = getServletContext().getRealPath("WEB-INF/classes/1.jpg"); response.setHeader("Content-Disposition", "attachment;filename=2.jpg"); response.setHeader("Content-Type", "application/octet-stream"); InputStream is = new FileInputStream(path); OutputStream os = response.getOutputStream(); byte buf[] = new byte[1024]; int len = -1; while((len=is.read(buf)) != -1) { os.write(buf, 0, len); } os.close(); is.close(); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
标签:
原文地址:http://www.cnblogs.com/codingpark/p/4231381.html