servlet:
import java.io.IOException;
import java.io.InputStream;
import java.util.Enumeration;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import com.sun.corba.se.spi.orbutil.fsm.Input;
public class Servlet2 implements Servlet{
@Override
public void destroy() {
// TODO Auto-generated method stub
}
@Override
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getServletInfo() {
// TODO Auto-generated method stub
return null;
}
@Override
public void init(ServletConfig servletconfig) throws ServletException {
//ServletContext: 获取Servlet所有信息
//获取初始化参数
ServletContext serlvetContext = servletconfig.getServletContext();
String user = serlvetContext.getInitParameter("user");
String pass = serlvetContext.getInitParameter("pass");
System.out.println("user:"+user);
System.out.println("pass:"+pass);
Enumeration<String> names = serlvetContext.getInitParameterNames();
while(names.hasMoreElements())
{
String name = names.nextElement();
String value = serlvetContext.getInitParameter(name);
System.out.println(name+":"+value);
}
//获取Servlet_Context 在服务器上的绝对路劲(必须在WebContent 里面,否则够不着),而不是部署前的路劲
String realpath = serlvetContext.getRealPath("/servlet_context.html");
System.out.println("servlet_context.html 的绝对路劲为:"+realpath);
//获取当前WEB 应用的名臣:
String contextPath = serlvetContext.getContextPath();
System.out.println("当前WEB 应用的名称:"+contextPath);
//获取当前WEB 应用的输入流
try{
//用classLoader 来获取
ClassLoader classLoader = getClass().getClassLoader();
InputStream is = classLoader.getResourceAsStream("wzx.properties");
System.out.println("wzx.properties的输入流为:\n1."+is);
}catch(Exception e){
e.printStackTrace();
}
try{
//用servletContext 来获取
InputStream is2 = serlvetContext.getResourceAsStream("/wzx.properties");
System.out.println("wzx.properties的输入流为:\n2."+is2);
}catch(Exception e){
e.printStackTrace();
}
}
@Override
public void service(ServletRequest arg0, ServletResponse arg1)
throws ServletException, IOException {
// TODO Auto-generated method stub
}
}
servlet--end
web:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>ServletContext</display-name>
<!-- context为全局的, init 参数为局部的-->
<context-param>
<param-name>user</param-name>
<param-value>root</param-value>
</context-param>
<context-param>
<param-name>pass</param-name>
<param-value>123456</param-value>
</context-param>
<servlet>
<servlet-name>MySerlvet2</servlet-name>
<servlet-class>Servlet2</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MySerlvet2</servlet-name>
<url-pattern>/MySerlvet2</url-pattern>
</servlet-mapping>
</web-app>