jsp

11. JSP: 用<--  注释不掉-->
注释  <%--只会存在于jsp的源代码中,翻译为servlet后,jsp注释消失了 --%>


      //存在于jsp的源代码中,翻译为servlet后,jsp注释也存在,生成HTML后消失了;


 


12.jsp 的指令, 指令的语法: <%@ 指令名称  属性名称="属性值" 空格 属性名称="属性值">


   jsp中有三个指令: page指令, include指令, taglib指令.


   
       1.jsp page指令: <%@ page %> --- 设置jsp的. 
            language : jsp脚本中使用的语言,现在只能写java.


             contentType: 设置浏览器打开这个jsp的时候采用的默认的字符集的编码
             pageEncoding: 设置文件保存到本地硬盘的编码


             improt="导包";   可以出现很多次


             extends: 设置jsp翻译成servlet后继承的类,默认值org.apache......httpjspbase
                       这个值想修改,这个类必须是httpservlet的子类


             autoFlush: 默认jsp的缓存自动刷出, true:自动刷出


             buffer   : 设置jsp的默认缓存区8K


             session  :设置在JSP中是否可以直接使用session,默认可以直接使用,不用request.getsession了


             isELgnored :设置在jsp中是否忽略EL表达式,默认值false,不忽略


             errorPage = "不需要写工程名,跳转到别的页面": 设置错误友好页面的提示; 
             isErrorPage :显示错误的信息,给客户看的,并且在源代码中显示错误;然后在jsp页面
                          <%=exception.getMessage()%>


             企业中:设置全局的错误友好页面,在工程下的web.xml中配置; <error-page>
                                                                       <error-code>
                                <location>
      
             
      2.include指令 :指示jsp包含其他的页面 ,属性file="相对路径"; 静态包含    
           
      3.taglib指令.  指示jsp引入标签库; uri="标签的uri的路径"  prefix=标签的别名""


                      


13. jsp的内置对象: 可以在Jsp中直接使用的对象;***********
     
       1.九大内置对象: request是: Httpservletrequest ;   response是: Httpservletrequest  
                       session 是: Httpsession;          application,是: servletContext 


                       page是: Object       pageContext是:pageContext     config,是: servletconfig
                       out是; Jspwriter     exception是: Throwable 默认不显示 设置isErrorpage="true"






           page内置对象:真实对象object,就是jsp翻译成servlet后类的引用.


           out内置对象:out和response.getwriter 不是同一个对象.真实对象不一致 
                       response获得writer是printwiter;     out缓冲区先到printwiter中,然后一起输出;




          **pageContext对象: 
             
              1.通过其他的8个内置对象:  编写通用性代码或者框架的时候


           ***2.向JSP的四个域中存取数据: 包含servlet三个,自己的一个


  1.pagescope        : 当前页面有效  pagecontext  真实对象:   pagecontext
  1.Requestscope     : 一次请求范围  request      真实对象:   Httpservletrequest 
  1.sessionscope     : 一次会话范围  session      真实对象:   Httpsession
  1.applicationscope : 应用范围      application  真实对象:   servletContext


              3.用pagecontext来存取其他域的数值:
                 存: pagecontext.setarribute("","",pagecontext.REQUEST_SCOPE);


                 取: pagecontext.getarribute("",pagecontext.REQUEST_SCOPE);




              4.pagecontext 特有方法: findAttribute(""); 从四大域中获取值,从范围小到大找值,只显示一个值




14. jsp动作标签: 列出6个:


       1.<jsp:forward/> :用于页面的转发.            page="路径"


       2.<jsp:include/> :用于页面的包含(动态包含).   page="路径"




            动态包含和静态包含的区别: 
                   <%@ include file=""%>
                1.静态包含: .jsp执行时,找到指定.jsp, 然后把文件内容复制过来,然后一起翻译成一个servlet,  然后编译,得到一个class,然后在执行;




                2.动态包含: .jsp执行时,找到指定.jsp, ,然后各自翻译成两个servlet,然后编译,得到俩个class,  然后分别执行;然后把指定.jsp执行的结果拿过来.




       3.<jsp:param/> :用于<jsp:include>、<jsp:forward>、<jsp:plugin>一起使用的标签下,
                   传递参数. value="" name=""


       4.<jsp:useBean/> :用于在jsp中使用JavaBean.


       5.<jsp:setproperty/> :用于在jsp中向JavaBean设置属性


       6.<jsp:getproperty/> :用于在jsp中获得JavaBean获得属性

你可能感兴趣的:(jsp)