Servlet ServletContext
阿新 • • 發佈:2021-11-10
在父工程下新建一個servlet子工程,參考上一篇隨筆
同樣地更改web.xml以及新建一些目錄
GetServlet的程式碼:
package com.liyu.servlet; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException;public class GetServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { ServletContext j =this.getServletContext(); String username = (String) j.getAttribute("usrname"); resp.setContentType("text/html"); resp.setCharacterEncoding("utf-8"); resp.getWriter().print(username); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req, resp); } }
SetServlet的程式碼:
package com.liyu.servlet; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException;public class SetServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { ServletContext i= this.getServletContext(); String usrname = "liyu"; i.setAttribute("usrname",usrname); } }
然後更改tomcat的配置
在web.xml中配置servlet的路徑
web.xml中的完整程式碼為
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0" metadata-complete="true"> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>set</servlet-name> <servlet-class>com.liyu.servlet.SetServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>set</servlet-name> <url-pattern>/set</url-pattern> </servlet-mapping> <servlet> <servlet-name>get</servlet-name> <servlet-class>com.liyu.servlet.GetServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>get</servlet-name> <url-pattern>/get</url-pattern> </servlet-mapping> </web-app>
執行測試,先去http://localhost:8080/s2/set 再去http://localhost:8080/s2/get