JSP的九大内置对象和四个作用域

JSP的九大内置对象: page,application,session,request,response,out,exception,config,pageContext. JSP的四个作用域:application,session,request,page.

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

//附上jsp转换成servlet后的java代码

package org.apache.jsp;

import javax.servlet.*;

import javax.servlet.http.*;

import javax.servlet.jsp.*;

import java.util.*;

public final class index_jsp extends org.apache.jasper.runtime.HttpJspBase

    implements org.apache.jasper.runtime.JspSourceDependent {

   int count = 0;

   

   int getCount(){

   int num = 100;

   return num = 100*count;

   

   }

   

    

  private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory();

  private static java.util.List _jspx_dependants;

  private javax.el.ExpressionFactory _el_expressionfactory;

  private org.apache.AnnotationProcessor _jsp_annotationprocessor;

  public Object getDependants() {

    return _jspx_dependants;

  }

  public void _jspInit() {

    _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();

    _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName());

  }

  public void _jspDestroy() {

  }

  public void _jspService(HttpServletRequest request, HttpServletResponse response)

        throws java.io.IOException, ServletException {

    PageContext pageContext = null;

    HttpSession session = null;

    ServletContext application = null;

    ServletConfig config = null;

    JspWriter out = null;

    Object page = this;

    JspWriter _jspx_out = null;

    PageContext _jspx_page_context = null;

    try {

      response.setContentType("text/html;charset=ISO-8859-1");

      pageContext = _jspxFactory.getPageContext(this, request, response,

                  nulltrue8192true);

      _jspx_page_context = pageContext;

      application = pageContext.getServletContext();

      config = pageContext.getServletConfig();

      session = pageContext.getSession();

      out = pageContext.getOut();

      _jspx_out = out;

      out.write(‘\r‘);

      out.write(‘\n‘);

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

      out.write("\r\n");

      out.write("\r\n");

      out.write("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\r\n");

      out.write("<html>\r\n");

      out.write("  <head>\r\n");

      out.write("    <base href=\"");

      out.print(basePath);

      out.write("\">\r\n");

      out.write("    \r\n");

      out.write("    <title>My JSP ‘index.jsp‘ starting page</title>\r\n");

      out.write("\t<meta http-equiv=\"pragma\" content=\"no-cache\">\r\n");

      out.write("\t<meta http-equiv=\"cache-control\" content=\"no-cache\">\r\n");

      out.write("\t<meta http-equiv=\"expires\" content=\"0\">    \r\n");

      out.write("\t<meta http-equiv=\"keywords\" content=\"keyword1,keyword2,keyword3\">\r\n");

      out.write("\t<meta http-equiv=\"description\" content=\"This is my page\">\r\n");

      out.write("  </head>\r\n");

      out.write("  \r\n");

      out.write("  <body>\r\n");

      out.write("  ");

      

  

   

      out.write("\r\n");

      out.write("   \r\n");

      out.write("   ");

      out.write("\r\n");

      out.write("  \r\n");

      out.write("  ");

      out.print(++count );

      out.write("\r\n");

      out.write("  ");

      out.print( getCount() );

      out.write("\r\n");

      out.write("  <form action=\"test.do\" method=\"post\">\r\n");

      out.write("  <select name =\"color\">\r\n");

      out.write("  <option>White</option>\r\n");

      out.write("  <option>Red</option>\r\n");

      out.write("  <option>Yellow</option>\r\n");

      out.write("  <option>Blue</option>\r\n");

      out.write("  </select>\r\n");

      out.write("  \r\n");

      out.write("  <input type=\"checkbox\" name=\"hobby\" value=\"football\">football<br>\r\n");

      out.write("  <input type=\"checkbox\" name=\"hobby\" value=\"football\">basketball<br>\r\n");

      out.write("  <input type=\"checkbox\" name=\"hobby\" value=\"football\">baseball<br>\r\n");

      out.write("  \r\n");

      out.write("  <input type=\"submit\">\r\n");

      out.write("  </form>\r\n");

      out.write("  </body>\r\n");

      out.write("</html>\r\n");

    catch (Throwable t) {

      if (!(t instanceof SkipPageException)){

        out = _jspx_out;

        if (out != null && out.getBufferSize() != 0)

          try { out.clearBuffer(); } catch (java.io.IOException e) {}

        if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);

      }

    finally {

      _jspxFactory.releasePageContext(_jspx_page_context);

    }

  }

}

application作用域就是服务器启动到关闭的整段时间,在这个作用域内设置的信息可以被所有应用程序使用。application作用域上的信息传递是通过ServletContext实现的.

session作用域比较容易理解,同一浏览器对服务器进行多次访问,在这多次访问之间传递信息,就是session作用域的体现,

一个HTTP请求的处理可能需要多个Servlet合作,而这几个Servlet之间可以通过某种方式传递信息,但这个信息在请求结束后就无效了。Servlet之间的信息共享是通过HttpServletRequest接口的两个方法来实现的。

page对象的作用范围仅限于用户请求的当前页面,对于page对象的引用将在响应返回给客户端之后被释放,或者在请求被转发到其他地方后被释放。对page对象的引用通常存储在pageContext对象中。

时间: 2024-10-06 03:00:12

JSP的九大内置对象和四个作用域的相关文章

黑马程序员【JSP九大内置对象和四个作用域】转载

http://www.cnblogs.com/fanfu1/p/4530980.html JSP九大内置对象和四个作用域 ------- android培训.java培训.期待与您交流! ---------- 在学习JSP的时候,首先就要先了解JSP的内置对象,什么是内置对象呢?内置对象也叫隐含对象,就是不需要预先声明就可以在脚本代码和表达式中随意使用.而这样的内置对象在JSP中一共有九个以及四个作用域,在下面的文章中我们会一一讲解. 现在我们先来说一下四个作用域,以便描述各大对象都分属于什么作

jsp九大内置对象及四个作用域【转】

1.Request对象 该对象封装了用户提交的信息,通过调用该对象相应的方法可以获取封装的信息,即使用该对象可以 获取用户提交的信息. 当Request对象获取客户提交的汉字字符时,会出现乱码问题,必须进行特殊处理.首先,将获取的 字符串用ISO-8859-1进行编码,并将编码存发岛一个字节数组中,然后再将这个数组转化为字符串对象 即可.如下: String textContent=request.getParameter("boy") byte b[]=textContent.get

JSP(二):JSP九大内置对象、四个作用域对象

jsp的九大内置对象:        内置对象:            jsp文件在转译成其对应的Servlet文件的时候自动生成的并声明的对象.我们在jsp页面中直接使用即可.        注意:            内置对象在jsp页面中使用,使用局部代码块或者脚本段语句来使用.不能够在全局代码块中使用.        内容:九个对象            pageContext:页面上下文对象,封存了其他内置对象.封存了当前jsp的运行信息.                    注意

JSP系列:(3)JSP进阶-九大内置对象和四个域对象

1.JSP九大内置对象 1.1.什么是内置对象? 在jsp开发中,会频繁使用到一些对象,例如HttpSession, ServletContext, ServletContext,  HttpServletRequet.如果我们每次要使用这些对象都去创建这些对象就显示非常麻烦.所以Sun公司设计Jsp时,在jsp页面加载完毕之后就会自动帮开发者创建好这些对象,而开发者只需要直接使用这些对象调用方法即可,这些创建好的对象就叫内置对象!!!! 1.2.9大内置对象 9大内置对象 序号 内置对象名 类

零散知识点(面向对象七大设计原则,jdbc--BaseDao,jsp九大内置对象。四个作用域)

面向对象七大设计原则: 1.开闭原则(OCP:Open-Closed Principle)2.里氏替换原则(LSP:Liskov Substitution Principle) 3.单一职责原则(SRP:Single responsibility principle)4.接口隔离原则(ISP:Interface Segregation Principle)5.依赖倒置原则(DIP:Dependence Inversion Principle)6.迪米特法则(LOD:Law of Demeter)

JSP九大内置对象及四个作用域详解

一共有九大内置对象: request.response.out.session.application.pageContext.page.config.exception 内置对象(又叫隐含对象),就是在jsp中,不需要创建(由服务器<容器>来创建),可以直接使用的对象. request           请求对象            类型 javax.servlet.ServletRequest        作用域 Request response          响应对象    

jsp九大内置对象及四个作用域

JSP九大对象:内置对象(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用. JSP中九大内置对象为: request              请求对象                类型 javax.servlet.ServletRequest         作用域    Request response           响应对象                   类型 javax.servlet.SrvletResponse        作用域  

jsp九大内置对象、四种作用域、跳转方式

jsp有四种属性范围: page -> 页面级别,显然只有在一个页面内可用. request -> 请求级别 服务器跳转,一次请求之后消失. session -> 会话级别 客户端跳转(服务器跳转),与浏览器有关,ie是在重新打开ie时才会不同. application = 应用级别,当重启服务器时才会消失客户端跳转: 客户端跳转是服务器将请求结果返回给客户端,客户端再向服务器发起另一次请求.在客户端跳转的过程中,客户端一定要参与跳转的过程.客户端跳转后的url是最后一次请求的地址.客户

jsp九大内置对象和四个作用域

request           请求对象            类型 javax.servlet.ServletRequest        作用域 Request response          响应对象              类型 javax.servlet.SrvletResponse        作用域 Page pageContext       页面上下文对象        类型 javax.servlet.jsp.PageContext       作用域 Page