zoukankan      html  css  js  c++  java
  • 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>
    


  • 相关阅读:
    【Python高级编程034 ● 静态web服务器 ● 静态Web服务器-返回固定页面数据】
    【Python高级编程033 ● 静态web服务器 ● 搭建Python自带静态Web服务器】
    【Python高级编程032 ● http协议 ● http响应报文】
    【Python高级编程031 ● http协议 ● http请求报文】
    做更好的自己:如何下得细功夫
    抓取图片视频等资源链接地址的Python小工具
    互联网应用服务端的常用技术思想与机制纲要
    《反脆弱》读书笔记
    错误启示录
    碎碎念集萃三九
  • 原文地址:https://www.cnblogs.com/LinkinPark/p/5233008.html
Copyright © 2011-2022 走看看