JSP笔记整理

jsp-------->引擎----------->浏览器(检查出错应到服务器对应文件夹下查看编译后的文件)
JSP注释
  
  
  1. <%-- xxxxxx--%> JSP中的注释
  2. <!-- xxxxxx --> Html中的注释
1、JSP和ASP都是动态语言,由语言解析引擎解释执行程序代码;
2、JSP代码先被编译成servlet,再被java虚拟机执行;
3、JSP被编译后,xxx.jsp文件会编译成xxx_jsp.java文件,该.java文件中默认产生三种方法:jspInit()方法【初始化】、jspService()方法【请求处理】和jspDestroy()方法【终止】(生命周期);
4、 JSP指令【2个】:目的是告诉JSP引擎该如何处理其他JSP页面, 不能带参数
   
   
  1. <%@ xxxxxx %> 
  2. <%@ page import="xxx.xxx.xxx" %> //说明起支持作用的java类别 
  3. <%@ page errorPage="xxx.jsp" %> //出现java运行问题时,通过errorPage指定打开页面
          include指令file】:把外部文件包含进来(先插入,后编译,需注意HTML、body等标签不能随意插入):
   
   
  1. <%@ include file="xxx.xxx"%> //在JSP编译时插入一个包含文本或代码的文件,可以是被包含文件可以是HTML文件、JSP文件、文本文件,或者只是一段Java代码
            page指令 :定义JSP文件中的全局属性,不能作用于动态的包含文件
  
  
  1. language="java" //声明脚本语言的种类
  2. extends="package.class" //标明JSP编译时需要加入Java Class的全名
  3. import="{package.class|package.* }, ..." //指明需要导入的Java包
  4. session="true|false" //设定客户是否需要HTTP session
  5. buffer="none|8KB|sizekb" //缓存
  6. autoFlush="true|false" //如果buffer溢出,是否需要强制输出
  7. isThreadSafe="true|false" //设置JSP文件是否能多线程使用
        隐藏对象
   
   
  1. Request:请求对象 代表的是来自客户端的请求,包含GET/POST请求参数
  2. Response:响应对象 代表的是对客户端的响应
  3. PageContext:页面上下文对象 代表的是当前页面运行的一些属性
  4. Session::会话对象 代表服务器与客户端所建立的会话
  5. Application:应用程序对象 负责提供应用程序在服务器中运行时的一些全局信息
  6. Out:输出对象 代表了向客户端发送数据的对象,与Response对象不同
  7. Config:配置对象 提供一些配置信息, 以获得Servlet初始化时的参数
  8. Page:页面对象
  9. Exception:例外对象 代表了JSP文件运行时所产生的例外对象
5、 JSP动作【7个】:控制servlet引擎行为
   
   
  1. <jsp:xxxxxx>
         <jsp:include>:页面 运行时, 在当前页面加入其它页面内容;include指令在编译时就加入。(先各自编译,后组合结果。可以带参数),包含一个静态或动态文件
  
  
  1. <jsp:include page="scripts/login.jsp" />
  2. <jsp:include page="copyright.html" />
  3. <jsp:include page="/index.html" />
  4. <jsp:include page="scripts/login.jsp">
  5. <jsp:param name="username" value="jsmith" />
  6. </jsp:include>
         include动作的相关属性:
  
  
  1. page="{相对URL|<%=expression%>}":参数为一相对路径,或代表相对路径的表达式
  2. flush="true":表示是否要立即打印出来
  3. <jsp:param name="parName" value="{parValue|<%=expression%>}"/>:<jsp:param>子句能传递一个或多个参数给动态文件,在一个页面中可使用多个<jsp:param>来传递多个参数

         <jsp:forward>:用于转发请求,page属性指定转发的目的页面。重定向一个HTML文件、JSP文件或者是一个程序段
  
  
  1. <jsp:forward page="/servlet/login" />
  2. <jsp:param name="username" value="jsmith" />
  3. </jsp:forward>
         forward动作的相关属性:
  
  
  1. page="{相对URL|<%=expression%>}":是一个表达式或一个字符串,用于说明将要定向的文件或URL,文件可以是JSP程序段,或其它能处理request对象的文件(如aspcgiphp)
  2. <jsp:param name="parName" value="{parValue|<%=expression%>}"/>:向一个动态文件发送一个或多个参数,该文件一定是动态文件
  3. 如果想传递多个参数,则可以在一个JSP文件中使用多个<jsp:param>。name指定参数名,value指定参数值
        <jsp:param>:在使用include和forward操作时添加传递的参数;在被包括的页面或转发的页面进行request访问时可以获得添加的参数。
   
   
  1. <jsp:param name="uid" value="shp"/>
        <jsp:plugin>:用于下载Java插件,且该动作在客户端执行。执行一个applet或bean,有可能的话还要下载一个Java插件执行它
   
   
  1. <jsp:plugin type=applet code="Molecule.class" codebase="/html">
  2. <jsp:params>
  3. <jsp:param name="molecule" value="molecules/benzene.mol" />
  4. </jsp:params>
  5. <jsp:fallback>
  6. <p>Unable to load applet</p>
  7. </jsp:fallback>
  8. </jsp:plugin>
           plugin动作的相关属性:
   
   
  1. type="bean|applet" 指出将被执行的插件对象的类型。必须指定是bean还是applet,因为这个属性没有缺省值
  2. code="classFileName":将会被Java插件执行的Java Class的名字,必须以.class结尾。这个文件必须存在于codebase属性指定的目录中
  3. codebase="classFileDirectoryName":将会被执行的Java Class文件的目录(或者是路径)。
  4. name="instanceName":是beanapplet实例的名字,它将会在JSP其它的地方调用
  5. archive="URIToArchive, ...":一些由逗号分开的路径名。这些路径名用于预装一些将要使用的class,这会提高applet的性能
         <jsp:usebean>:创建一个Bean实例并指定它的名字和作用范围
   
   
  1. <jsp:useBean id="cart" scope="session" class="session.Carts" />
  2. <jsp:setProperty name="cart" property="*" />
  3. <jsp:useBean id="checking" scope="session" class="bank.Checking" >
  4. <jsp:setProperty name="checking"property="balance" value="0.0" />
  5. </jsp:useBean>
        usebean动作的相关属性
   
   
  1. id="beanInstanceName":在所定义的范围中确认Bean的变量,能在后面的程序中使用此变量名来分辨不同的Bean,对大小写敏感
  2. scope="page|request|session|application"Bean存在的范围以及id变量名的有效范围。缺省值是page
  3. class="package.class":使用new关键字以及class构造器从一个class中示例一个Bean。这个class不能是抽象的,必须有一个公用的、没有参数的构造器。区别大小写
          page和request区别:
                不同点:page的usebean只在当前页面有效【A拿着证件请求B办业务,B收到后返给A并让A去找C办】,request在执行相同请求时usebean都有效【A拿着证件请求B办业务,B把A的证件给了C,C办好后返还给B,B再给A】。
                相同点:直到页面执行完毕向客户端发回响应或转到另一个文件为止。
         <jsp:setProperty>:设置Bean中的属性值,故 必须和<jsp:usebean>一起使用。 <jsp:setProperty>中的name的值应当和<jsp:useBean>中id的值相同
        setProperty动作的相关属性
  
  
  1. name="beanInstanceName":表示已经在<jsp:useBean>中创建的Bean实例的名字
  2. property="*":储存用户在JSP输入的所有值,用于匹配Bean中的属性。在Bean中的属性的名字必须和request对象中的参数名一致
         <jsp:getProperty>:获取Bean的属性值,用于显示在页面中。 使用<jsp:getProperty>之前,必须用<jsp:useBean>创建它
        getProperty动作的相关属性
  
  
  1. name="beanInstanceName"Bean的名字,由<jsp:useBean>指定
  2. property="propertyName":指定Bean的属性名
6、Session(默认有效时间为秒)是放在服务器端的,Cookie是放在本地的(不常用了)
  
  
  1. session.setAttribute();
  2. session.getAttribute();
7、修改服务器端口号:server.xml中修改(默认端口:JBoss-8888、tomcat-8080、mysql-3306、Oracle1521);
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值