• [转][Java]Jsp入门


    <%
        response.getOutputStream().write("123".getBytes());
    %>

    新建一个 Web Project 项目,jsp 文件新建在 WebRoot 目录下,在 Body 节点中加入以上代码,发布。

    输出的页面如下:

    <html><head></head><body>123</body></html>

    在路径 X:apache-tomcat-7.0.77workCatalinalocalhostday08orgapachejspindex_jsp.java 下可以找着此文件

    打开后会看到上面的 jsp 文件实现原理,相当于一个 Servlet。

    需要注意的是: response.getOutputStream().write() 之后的语句都没有输出到浏览器。

    <%
        Date date = new Date();
        out.write(date.toLocaleString());
    %>

    平时 jsp 中使用这段代码更为合适,此处 out = pageContext.getOut();


    page 指令用于定义 JSP 页面的各种属性,无论 page 指令出现在 jsp 页面中的什么地方,它作用的都是整个 jsp 页面,一般放在 jsp 页面起始位置。
    JSP 2.0 规范中定义的 page 指令的完整语法:
    <%@ page
    [language="java"]  // 定义此页面由 java 语言编写
    [extends="package.class"]  // 
    [import="{package.class | package.*}, ..."]  // 默认会导入 import="java.util.*"
    [session="true | false"]  // 默认为 false ,此时可用 response.getSession() 引出。
    [buffer="none | 8kb | sizekb"]  // 默认页面使用 8kb 缓存
    [autoFlush="true | false"]  // 
    [isThreadSafe="true | false"]  //
    [info="text"]  //
    [errorPage="relative_url"]  // 此处为相对路径。以 "/" 开头,表示Web应用的根目录,否则相对于当前页面。
    [isErrorPage="true | false"]
    [contentType="mimeType[;charset=characterSet]" | "text/html;charset="UTF-8"]
    [pageEncoding="characterSet | UTF-8"]
    [isELIgnored="true | false"]
    %>
    也可以在 web.xml 文件中使用 <error-page> 元素为整个 web应用 设置错误处理页面,
    其中 <exception-type> 指定异常类的完全限定名,<location> 指定以 "/" 开头的错误处理页面的路径。
     
    JSP 脚本有 表达式 和 语句块 两种
    表达式(expression): <%= 变量 或 表达式 %> 此时没有 ; 来表示结束
    语句块(scriptlet):<% 代码块 %> 此代码块使用 java 语法。
    多个语句块中的代码属于同一作用域,可以相互访问。单个语句块中的  Java 语句可以不完整,但多个脚本片断组合后的结果必须是完整的 Java 语句。

    JSP 声明:
    JSP 页面编写的所有代码,都会翻译到 servlet 的 service 方法中,而 java 代码被翻译到 _jspService 方法的外面。
    语法:
    <%!
        语句块
    %>

    此处多了一个 ! 符号,它可用于定义 JSP 页面转换成的 Servlet 程序的静态代码块、成员变量和方法。

    多个静态代码块、变量和函数可以定义在一个 Jsp 声明中,也可以分别单独定义在多个 Jsp 声明中。

    Jsp 隐式对象的作用范围仅限于 Servlet 的 _jspService 方法,所以在 JSP 声明中不能使用这些隐式对象。

  • 相关阅读:
    vscode常用插件列表
    使用docker构建supervisor全步骤
    docker删除虚悬镜像(临时镜像文件)
    消息队列的对比
    ECharts使用:this.dom.getContext is not a function
    curl命令行请求
    工作工具清单
    《SQL优化入门》讲座总结
    初始化git库并配置自动部署
    php代码进行跨域请求处理
  • 原文地址:https://www.cnblogs.com/z5337/p/6911688.html
Copyright © 2020-2023  润新知