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

原创 2015年07月08日 08:45:52

在前面的博客里面,使用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:\Workserver\apache-tomcat-6.0.37\webapps\linkin\
		
	}

	@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>


版权声明:本文为博主原创文章,欢迎大家转载。如有错误请多多指教。

相关文章推荐

Servlet中对象session的使用

Session基于Cookie技术,Session保存在服务器端(一般会设置有效期),SessionID保存在客户端.Session里面保存!!若干个!!!"键-值"对,可以通过 void setAt...
  • zavens
  • zavens
  • 2007年08月26日 20:59
  • 28616

【Servlet】在servlet中使用session

众所周知,在JSP页面上可直接通过session.setAttribute(name,object)设置session。 可如果想在servlet使用session 的话,就和在JSP有点区别了。 在...

Servlet中怎么取得session和application

session可以通过request.getSession();来获取 application可以通过this.getServletContext()来获取,具体代码如下: pu...
  • H12KJGJ
  • H12KJGJ
  • 2016年11月21日 17:43
  • 1416

Servlet中怎么取得session和application

import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletContext;//和其它的...

Servlet中获取application对象的两种方法

在Servlet中,取得application有两种方法: 1.通过无参初始化方法,直接取得 public class Application extends HttpServlet {   ...
  • bugDemo
  • bugDemo
  • 2012年12月13日 22:25
  • 2537

关于servlet 和jsp中的 session对象

1.在servlet中,要得到session并设值 要用 request.getSession().setAttribute();  2.在jsp页面中                     ...

JSP内置对象之------response、session、application

1. 重定向和转发    response.sendRedirect("地址"); a. 页面地址显示最终页面         b. 不可向后传递参数         c. 跳到外部站点 ...
  • emilyRR
  • emilyRR
  • 2015年03月29日 22:40
  • 569

JSP九大内置对象(Request,Response,Out,Session,Application,Cookie,Config,Page,Exception)

1、Request对象 该对象封装了用户提交的信息,通过调用该对象相应的方法可以获取封装的信息,即使用该对象可以获取用户提交的信息。 当Request对象获取客户提交的汉字字符时,会出现乱码问...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Servlet--取得session,application内置对象
举报原因:
原因补充:

(最多只允许输入30个字)