• Servlet--取得session,application内置对象



    在前面的博客里面,使用Servlet取得了request,response,config对象,实际上通过Servlet程序也可以取得session,application等内置对象。


    1,通过HttpServletRequest取得HttpSession

    <span style="white-space:pre">	</span>//返回当前的session
    	public abstract HttpSession getSession();
    	//返回当前的session,如果没有则创建一个新的session对象返回
    	public abstract HttpSession getSession(boolean paramBoolean);

    package linkin;
    
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
    
    public class LinkinServlet extends HttpServlet
    {
    	private static final long serialVersionUID = 1L;
    
    	@Override
    	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
    	{
    		HttpSession session = req.getSession();
    		System.out.println(session.getId());//4214F4CE399E02730C3219CF0BD83623
    		session.setAttribute("age", 25);
    		System.out.println(session.getAttribute("age"));//25
    		
    	}
    
    	@Override
    	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
    	{
    		this.doGet(req, resp);
    	}
    
    }
    
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    	
    	
    	<servlet>
    		<servlet-name>LinkinServlet</servlet-name>
    		<servlet-class>linkin.LinkinServlet</servlet-class>
    		<init-param>
    			<param-name>name</param-name>
    		<param-value>LinkinPark...</param-value>
    		</init-param>
    	</servlet>
    	
    	<servlet-mapping>
    		<servlet-name>LinkinServlet</servlet-name>
    		<url-pattern>/LinkinServlet</url-pattern>
    	</servlet-mapping>
    
    </web-app>
    


    2,利用GenericServlet取得ServletContext实例

    public ServletContext getServletContext()
      {
        return getServletConfig().getServletContext();
      }

    package linkin;
    
    import java.io.IOException;
    
    import javax.servlet.ServletContext;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    public class LinkinServlet extends HttpServlet
    {
    	private static final long serialVersionUID = 1L;
    
    	@Override
    	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
    	{
    		ServletContext context = getServletContext();
    		//获取“/”,也就是项目实际在服务器上物理位置
    		System.out.println(context.getRealPath("/"));//E:Workserverapache-tomcat-6.0.37webappslinkin
    		
    	}
    
    	@Override
    	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
    	{
    		this.doGet(req, resp);
    	}
    
    }
    
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    	
    	
    	<servlet>
    		<servlet-name>LinkinServlet</servlet-name>
    		<servlet-class>linkin.LinkinServlet</servlet-class>
    		<init-param>
    			<param-name>name</param-name>
    		<param-value>LinkinPark...</param-value>
    		</init-param>
    	</servlet>
    	
    	<servlet-mapping>
    		<servlet-name>LinkinServlet</servlet-name>
    		<url-pattern>/LinkinServlet</url-pattern>
    	</servlet-mapping>
    
    </web-app>
    


  • 相关阅读:
    uvm_pkg——老板,打包带走
    uvm.sv——UVM之道
    uvm_comps.svh
    uvm_subscriber——告诉她我们来过
    uvm_monitor——借我一双慧眼
    编程面试过程中常见的10大算法(转)
    MySQL 分区表
    Nginx + Tomcat 动静分离实现负载均衡(转)
    浅析JVM内存结构和6大区域(转)
    Linux Shell编程变量赋值和引用
  • 原文地址:https://www.cnblogs.com/LinkinPark/p/5233008.html
Copyright © 2020-2023  润新知