关闭

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

678人阅读 评论(0) 收藏 举报
分类:

在前面的博客里面,使用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>


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:286626次
    • 积分:6150
    • 等级:
    • 排名:第4206名
    • 原创:310篇
    • 转载:87篇
    • 译文:14篇
    • 评论:20条
    联系博主
    有什么要跟我说的么,请点击这里在线交流!天行健君子当自强不息,做一个热爱生活的程序员
    最新评论