`
chaoyi
  • 浏览: 290491 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

取得其他内置对象

 
阅读更多

本章目标
可以从Servlet中取得session对象并进行操作;
可以从Servlet中取得Application对象并进行操作。

 

取得HttpSession实例
在Servlet程序中要想取得一个session对象,则可以通过HttpServletRequest接口完成,在此接口中提供了以下的操作方法
public HttpSession getSession()
public HttpSession getSession(boolean create)

 

取得HttpSession对象

package cn.demo;
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 HttpSessionDemoServlet extends HttpServlet {//继承HttpServlet
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {//处理服务
		HttpSession ses=request.getSession();//取得session对象
		System.out.println("SESSION ID --> "+ses.getId());//取得Session Id
		ses.setAttribute("username", "chaoyi");//设置属性
		System.out.println("username 属性内容 : "+ses.getAttribute("username"));
		
	}
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {//处理服务
		this.doGet(request, response);//调用doGet()
	}
}

 

配置web.xml

  <servlet><!-- 定义servlet -->
  	<servlet-name>sessiondemo</servlet-name><!-- 与servlet-mapping对应 -->
  	<servlet-class>cn.demo.HttpSessionDemoServlet</servlet-class><!-- 定义包.类名称 -->
  </servlet>
  <servlet-mapping><!-- 映射路径 -->
  	<servlet-name>sessiondemo</servlet-name><!-- 与servlet相对应 -->
  	<url-pattern>/HttpSessionDemoServlet</url-pattern><!-- 页面的映射路径 -->
  </servlet-mapping>

 

效果图:

 

取得ServletContext实例
application内置对象是ServletContext接口的实例,表示的是Servlet上下文,如果要在一个Servlet中使用此对象,直接通过GenericServlet类提供的方法即可:
public ServletContext getServletContext()

 

取得application对象

package cn.demo;
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 ServletContextDemoServlet extends HttpServlet {//继承HttpServlet
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {//处理服务
		ServletContext app=super.getServletContext();//取得application
		System.out.println("真实路径:"+app.getRealPath("/"));
	}
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {//处理服务
		this.doGet(request, response);//调用doGet()
	}
}

 

配置web.xml

  <servlet><!-- 定义servlet -->
  	<servlet-name>applicationdemo</servlet-name><!-- 与servlet-mapping对应 -->
  	<servlet-class>cn.demo.ServletContextDemoServlet</servlet-class><!-- 定义包.类名称 -->
  </servlet>
  <servlet-mapping><!-- 映射路径 -->
  	<servlet-name>applicationdemo</servlet-name><!-- 与servlet相对应 -->
  	<url-pattern>/ServletContextDemoServlet</url-pattern><!-- 页面的映射路径 -->
  </servlet-mapping>

 

效果图:

 
小结
通过getSession()方法可以直接取得HttpSession的实例化对象;
通过getServletContext()方法可以取得ServletContext的实例化对象。 

  • 大小: 21 KB
  • 大小: 30.3 KB
0
0
分享到:
评论

相关推荐

    李兴华Java Web开发实战经典.pdf (高清版) Part1

    9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、Servlet跳转 9.7.1、客户端跳转 9.7.2、服务器端跳转 9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I ...

    李兴华 Java Web 开发实战经典_带源码_高清pdf 带书签 上

    9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、Servlet跳转 9.7.1、客户端跳转 9.7.2、服务器端跳转 9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I 9.8.2、...

    李兴华 java_web开发实战经典 源码 完整版收集共享

    9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、Servlet跳转 9.7.1、客户端跳转 9.7.2、服务器端跳转 9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I 9.8.2、...

    MLDN+李兴华+Java+Web开发实战经典.part3.rar )

    9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、Servlet跳转 9.7.1、客户端跳转 9.7.2、服务器端跳转 9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I ...

    李兴华 Java Web 开发实战经典_带源码_高清pdf 带书签 下

    9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、Servlet跳转 9.7.1、客户端跳转 9.7.2、服务器端跳转 9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I 9.8.2、...

    java web 视频、电子书、源码(李兴华老师出版)

    9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、Servlet跳转 9.7.1、客户端跳转 9.7.2、服务器端跳转 9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I ...

    李兴华Java Web开发实战经典(高清版) Part2

    9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、Servlet跳转 9.7.1、客户端跳转 9.7.2、服务器端跳转 9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I ...

    李兴华 Java Web 开发实战经典 高清扫描版Part3

    9.6、取得其他内置对象 9.6.1、取得HttpSession实例 9.6.2、取得ServletContext实例 9.7、Servlet跳转 9.7.1、客户端跳转 9.7.2、服务器端跳转 9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I 9.8.2、...

    Java9种内置对象

    out:向页面输出 ...session:封装了用户浏览器和服务器的会话, 可以记录每个浏览器的运行状态 application:代表整个应用(web...pageContext:页面的管家,从对象中可以取得其他所有的内置对象 config:取得jsp网页的配置信息

    JSP 9大内置对象学习总结

    JSP9大内置对象学习总结 JSP内置9大对象 request常用方法 response session与客户端取得会话 application实现网页计数器

    jsp页面分页操作,用java类封装,页面直接调用对象显示

    把在页面上的分页操作,在java类用一个对象封装,并且把整个分页的html标签封装在这个对象的String类型的属性里,在需要分页的地方,直接从后台取得这个对象,并把对象中的字符串用页面的内置out对象写到页面上,...

    Asp.net内置对象之Request对象(概述及应用)

    Request对象主要用于获取来自客户端的数据,如用户填入表单的数据、保存在客户端的Cookie等,本文将围绕Request对象,讲解其的主要作用:读取窗体变量、读取查询字符串变量、取得Web服务器端的系统信息。取得客户端...

    springboot常用框架

    ,包括springboot的注解分析、路径分析、取得内置对象、项目打包、配置环境属性、读取资源文件、Bean配置、模板渲染、 基于yml的多profile配置、基于properties的多profile、添加数据验证、配置错误页、全局异常处理...

    使用ajax操作 JavaScript 对象

     使用jQuery的选择符可以遍历和操作取得的HTML结构,但是还有一种JavaScript内置的数据 格式,既能减少数据传输量,也会减少编码量。 1.取得JSON  前面我们曾经看到过,JavaScript对象是由一些“键-值”对组成的...

    使用ajax操作JavaScript 对象详解

     使用jQueiy的选择符可以遍历和操作取得的HTML结构,但是还有一种JavaScript内置的数据 格式,既能减少数据传输量,也会减少编码量。 1.取得JSON  前面我们曾经看到过,JavaScript对象是由一些“键-值”对组成的,...

    jsp和asp.net共享session值示例代码

    登录的ASPX文件中,在登录成功后将Session中的变量值保存到数据库中的一张表,关键字使用ASP.NET的Session对象的SessionID,然后建立一个ASPX文件,取得当前登录用户的SessionID,并使用的ASP.NET重定向语句,转到...

    启明星门户网站Portal v4.0 beta 测试版.rar

    3.内置了一个简单论坛,虽然不如Discuz、BBSMAX这样专业论坛功能强大,但是考虑到本系统主要面向对象是企业用户,所以基本够用(例如去除了积分、头衔等功能) 4.内置的相册具有上传图片进行裁剪功能,这可以放置图片...

    ownerWang-graduation-master_java_

    springboot 自身组件使用,包括springboot的注解分析、路径分析、取得内置对象、项目打包、配置环境属性、读取资源文件、Bean配置、模板渲染、基于yml的多profile配置、基于properties的多profile、添加数据验证、配

    Web程序设计实践04

    ASP.NET 内置对象 如何是让服务器取得客户端浏览器的一些数据? 如何输出数据到客户端? 如何记录网络的信息? 如何保存与当前用户会话相关的信息?

Global site tag (gtag.js) - Google Analytics