zoukankan      html  css  js  c++  java
  • JSP基础

    一、9大内置对象

    request 用户端请求,此请求会包含来自GET/POST请求的参数
    response 网页传回用户端的回应
    pageContext 网页的属性是在这里管理
    session 与请求有关的会话期
    application servlet 正在执行的内容
    out 用来传送回应的输出
    config servlet的构架部件
    page JSP网页本身
    exception 针对错误网页,未捕捉的例外

     

    request表示HttpServletRequest对象。它包含了有关浏览器请求的信息,并且提供了几个用于获取cookie, header,和session数据的有用的方法。 

    response表示HttpServletResponse对象,并提供了几个用于设置送回浏览器的响应的方法(如cookies,头信息等)

    out对象是javax.jsp.JspWriter的一个实例,并提供了几个方法使你能用于向浏览器回送输出结果。
    pageContext表示一个javax.servlet.jsp.PageContext对象。它是用于方便存取各种范围的名字空间、servlet相关的对象的API,并且包装了通用的servlet相关功能的方法。
    session表示一个请求的javax.servlet.http.HttpSession对象。Session可以存贮用户的状态信息
    applicaton 表示一个javax.servle.ServletContext对象。这有助于查找有关servlet引擎和servlet环境的信息
    config表示一个javax.servlet.ServletConfig对象。该对象用于存取servlet实例的初始化参数。
    page表示从该页面产生的一个servlet实例

     

    二、jsp有哪些动作?作用分别是什么?
    JSP共有以下6种基本动作:
    jsp:include:在页面被请求的时候引入一个文件。
    jsp:useBean:寻找或者实例化一个JavaBean。
    jsp:setProperty:设置JavaBean的属性。
    jsp:getProperty:输出某个JavaBean的属性。
    jsp:forward:把请求转到一个新的页面。
    jsp:plugin:根据浏览器类型为Java插件生成OBJECT或EMBED标记

     

    三、JSP的常用指令

    isErrorPage(是否能使用Exception对象),

    isELIgnored(是否忽略表达式)

     

    四、静态include与动态include的区别:

    动态INCLUDE用jsp:include动作实现 ,它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数 

    <jsp:include page="included.jsp" flush="true" />
    静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面
    <%@ include file="included.htm" %> 
    总结:
    jsp:include是先编译一下included.jsp文件,然后再包含 先编译,后包含

    @ include是先把文件包含就来,然后统一编译 先包含,后编译

    五、页面间对象传递的方法

    request,session,application,cookie等

    六、JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么?

    JSP是Servlet技术的扩展,本质上是Servlet的简易方式,更强调应用的外表表达。JSP编译后是"类servlet"。

    Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。

    JSP侧重于视图,Servlet主要用于控制逻辑。

    七、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1

    tempStr = newString(str.getBytes("ISO-8859-1"), "GBK");

    八、在a.jsp与b.jsp之间传参数

    方式一:通过链接

    a.jsp

    <% 
          String name = "myname";
      %>
     <a href="b.jsp?name=<%=name%>">跳转到b</a>

     b.jsp

    <%
    String userName = request.getParameter("name");
    out.println(userName);
     %>

    方式二:session

    a.jsp

     <% 
      session.setAttribute("name", 1234);
      %>

    b.jsp

    <%
    
    out.println(session.getAttribute("name"));
    
     %>

    九、jsp的作用域

    page 在当前页面有效(仅用于JSP中)  
    request 在当前请求中有效  
    session 在当前会话中有效  
    application 在所有应用程序中有效

     

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    openwrt编译出错处理记录
    转:小白编译openwrt固件教程
    转:openwrt中luci学习笔记
    (转)内存和外设的统一编址及独立编址
    (转)无法打开C盘,提示"本次操作由于这台计算机的限制被取消,请与你的管理员联系”
    (转)c# 解析JSON的几种办法
    计算机中断(转贴,很经典的解释)
    转:用WCAT进行IIS压力测试
    转:windows命令行下如何查看磁盘空间大小
    转:如何在32位程序中突破地址空间4G的限制
  • 原文地址:https://www.cnblogs.com/stellar/p/5268567.html
Copyright © 2011-2022 走看看