ServletConfig 객체에는 네 가지 메소드가 있습니다. #1 , getInitParameterNames는 Web.xml에서 매개변수 이름과 매개변수 값을 가져오는 데 사용됩니다.
(2) getServletName Web.xml에서 Servlet 이름을 가져옵니다.Example
다음은 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">
<servlet>
<servlet-name>TestServletConfig</servlet-name>
<servlet-class>com.djun.serveleMapping.TestServletConfig</servlet-class>
<!--配置Servlet的初始化参数-->
<!-- 如何获取初始化的参数?
1、getInitParameter(String name)
Returns a String containing the value of the named initialization parameter,
or null if the parameter does not exist.
2、 getInitParameterNames()
Returns the names of the servlet's initialization parameters as an Enumeration of String objects,
or an empty Enumeration if the servlet has no initialization parameters.
-->
<init-param>
<param-name>username</param-name>
<param-value>admin</param-value>
</init-param>
<init-param>
<param-name>passworld</param-name>
<param-value>admin</param-value>
</init-param>
<!--
指定Servlet JSP被创建的时机
若数值 a<0,则仅在第一次的时候被创建。
若 a>=0 , 则在当前应用被Servlet容器加载时创建实例
数值越小越早被创建
-->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>TestServletConfig</servlet-name>
<!--只要后缀为html的文件都由该类处理-->
<url-pattern>/servletConfig</url-pattern>
</servlet-mapping>
</web-app>
import javax.servlet.*;
import java.io.IOException;
import java.util.Enumeration;
public class TestServletConfig implements Servlet {
@Override
public void init(ServletConfig servletConfig) throws ServletException {
System.out.println("Init TestServletConfig...");
System.out.println("-----------执行getInitParameter--------");
String username = servletConfig.getInitParameter("username");
String passworld = servletConfig.getInitParameter("passworld");
System.out.println("username: " + username+"\n"+"password : "+passworld);
System.out.println("----------执行getInitParameterNames------");
Enumeration<String> names = servletConfig.getInitParameterNames();
while(names.hasMoreElements()){
String name = names.nextElement();
String value = servletConfig.getInitParameter(name);
System.out.println("username: " + name+"\n"+"password : "+value);
}
String servletName = servletConfig.getServletName();
System.out.println(servletName);
}
@Override
public ServletConfig getServletConfig() {
return null;
}
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
System.out.println("TestServletConfig....");
}
@Override
public String getServletInfo() {
return null;
}
@Override
public void destroy() {
}
}
(2) 웹 애플리케이션의 모든 서블릿은 동일한 ServletContext 객체를 공유하므로 ServletContext 객체를 애플리케이션 객체(즉, 웹 애플리케이션 객체)라고 합니다.
(1) getRealPath()
서버에 있는 파일의 절대 경로를 가져옵니다. 참고: 배포 전 경로가 아닙니다. 다음 파일이 저장되어 있는 디렉터리에 주의하세요
(2) getContextPath()
다음 파일 가져오기 현재 웹 애플리케이션 해당 입력 스트림.
System.out.println("getContextPath() -----------"); String contextPath = servletContext.getContextPath(); System.out.println(contextPath); String fileName = "application.properties"; try { File file = new File(realPath+ "/" + fileName); ClassLoader classLoader = getClass().getClassLoader(); InputStream is = classLoader.getResourceAsStream(realPath + "/" + fileName); System.out.println(realPath+ "/" + fileName); System.out.println("1. "+ is); } catch (Exception e) { e.printStackTrace(); }
위 내용은 서블릿 JSP ServletConfig 객체의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!