zoukankan      html  css  js  c++  java
  • [Jweb] JSP 编程 00 -Declaration- Scriptlet-表达式-Directive (推出原因 : Servlet写标签非常麻烦!)

    Know@01 
     JSP简介
      (1), JSP---Java Server Pages
      (2), 拥有 servlet 的特性与优点(本身就是一个 servlet )
      (3), 直接在 HTML 中内嵌 JSP 代码
      (4), JSP 程序由 JSP Engine 先将它转换成 Servlet 代码,接着将它编译成类文件载入执行
             只有当客户端第一次请求 JSP 时,才需要将其转换、编译
      JSP中可直接嵌入 java 代码。
      http://127.0.0.1:8888/docs/
      http://127.0.0.1:8888/docs/api/index.html 联网才能看到文档
      JSP 看起来不像 html, 所以推出 JSTL(jsp2.0) - JSF(jsp3.0), sun一向情愿的想法。
    Know@02   
     JSP编程—基本语法
      JSP传统语法
    Declaration
    Scriptlet
    Expressionz
    Comment
    Directives
    Action动作指令
    内置对象
     (1), JSP编程---Declaration

       基本语法 : <%!  %>
       说明:在此声明的变量、方法都会被保留成唯一的一份,直到 JSP 程序停止执行.(成员变量,不是局部)
        例 :<%!
                    int i;
                    public void setName(){… …}
                %>

    示例程序 : AccessCounts.jsp
      (2), Scriptlet
    基本语法 :<% 程序代码区 %>
    可以放入任何的 Java 程序代码
    例: <%
           for (int i = 0; i < 10; i++) {
           … …
           }
        %>

    其他 : 程序猿经常与 IE 缓存做斗争。
                html的注释,无法阻止java jsp代码<%%>的执行,但是不会在html的浏览器中显示
                <%%> 是在服务端执行的java代码。
        HttpJspBase
      (3), 表达式
    基本语法 : <%= … … %>
    =后面必须是字符串变量或者可以被转换成字符串的表达式
    不需要以;结束
    只有一行
    例:
    <%=“hello world”%>
    <%=i+1%>
    <%=request.getParameter(“name”)%>  
    示例程序 : Expressions.jsp
      (4), Directive (编译指令)相当于在编译期间的命令
        格式 : <%@Directive 属性=“属性值”%>
        常见的Directive:
           *1, page
           *2, include
           *3, taglib
    **1), Directive--page
    指明与JSP Container 的沟通方式
    基本格式:
    <%@page language=“script language”|  -- 默认就是 java
    extends=“className”|             -- 基本用不上
    import=“importList”|             -- 很好, 可以用
    buffer=“none|kb size”|   --none:不缓冲,默认8k
    session=“true|false”|   --是否可以使用session,默认true
    autoFlush=“true|false”  --缓冲器是否自动清除,默认true
    isThreadSafe=“true|false”|  --默认false(永远不要设成true)
    errorPage=“errorPageUrl”|
    isErrorPage=“true|false”|
    contentType=“contentTyepInfo” | pageEncoding=“gb2312” 很好!
     相当于这句话 (response.setContentType("text/html;charset=gb2312");)
    %>

        示例程序 : TestDirective.jsp
    <%@page import="java.util.*" session="false"%>
    <%@page contentType="text/html;charset=gb2312"%>
    <%= new Date() %>
    <%
    out.println("你好!");
    %>
  • 相关阅读:
    Notes about "Exploring Expect"
    Reuse Sonar Checkstyle Violation Report for Custom Data Analysis
    Eclipse带参数调试的方法
    MIT Scheme Development on Ubuntu
    Manage Historical Snapshots in Sonarqube
    U盘自动弹出脚本
    hg的常用配置
    Java程序员的推荐阅读书籍
    使用shared memory 计算矩阵乘法 (其实并没有加速多少)
    CUDA 笔记
  • 原文地址:https://www.cnblogs.com/robbychan/p/3786866.html
Copyright © 2011-2022 走看看