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

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

输出的页面如下:

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

在路径 X:\apache-tomcat-7.0.77\work\Catalina\localhost\day08\org\apache\jsp\index_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 声明中不能使用这些隐式对象。

[转][Java]Jsp入门的更多相关文章

  1. 自学 Java 怎么入门

    自学 Java 怎么入门? 595赞同反对,不会显示你的姓名     给你推荐一个写得非常用心的Java基础教程:java-basic | 天码营 这个教程将Java的入门基础知识贯穿在一个实例中,逐 ...

  2. Jsp入门学习笔记

    #Jsp入门 一.JSP基础语法 1.JSP指令: page inlcude taglib 2.JSP注释: a.html注释: <!-- abcdefghijklmn --> b.jsp ...

  3. JSP入门:介绍什么是JSP和Servlet(转)

    转自:http://developer.51cto.com/art/200907/134506.htm JSP入门:什么是jsp? JSP(Java Server Pages)是由Sun Micros ...

  4. JSP入门必读

    JSP基础知识:转自老师上课梳理的笔记,希望对大家有所帮助.有什么不妥当的地方还望大家批评指正. 特别适用于JSP入门的人员使用.1.JSP [1] 简介1.1 HTML    HTML擅长显示一个静 ...

  5. Java web 入门知识 及HTTP协议详解

     Java  web  入门知识 及HTTP协议详解 WEB入门 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资 ...

  6. 九、JSP入门(1)

    JSP入门 1 JSP概述 1.1 什么是JSP JSP(Java Server Pages)是JavaWeb服务器端的动态资源.它与html页面的作用是相同的,显示数据和获取数据. 1.2 JSP的 ...

  7. .NET/ASP.NET/C#/WCF/SQL Server/My SQL/Java/JSP/JDBC/Spring/Spring MVC/PHP/Python/Ruby/Shell/Agile/CSS/HTML/HTTP/Unix/Linux大量PDF书籍/电子书籍下载, Effective Java 下载

    223本电子书籍,囊括了.NET/ASP.NET/C#/WCF/SQL Server/My SQL/Java/JSP/JDBC/Spring/Spring MVC/PHP/Python/Shell/A ...

  8. day11(jsp入门&Cookie&HttpSession&一次性图片校验码)

    day11 JSP入门   1 JSP概述 1.1 什么是JSP JSP(Java Server Pages)是JavaWeb服务器端的动态资源.它与html页面的作用是相同的,显示数据和获取数据. ...

  9. JSP入门之自定义标签

    第二部分简单讲解:主要讲解el表达式,核心标签库.本章主要讲解:自定义标签库:404页面,505页面,错误页面配置方法 全部代码下载:链接 1.JSP自定义标签: 自定义标签是用户定义的JSP语言元素 ...

随机推荐

  1. qml 与C++交互

    最近一直在研究qml 怎么与C++交互,今天在网上看到一段代码忽然想明白了,哦!!!我在QT还只是一个小白,嘿嘿 首先在我们定义了CPP文件起名:比如:util.cpp,baidumusic.cpp ...

  2. PHP stripos()、strripos()和strrpos() 使用方法和区别

    区别 stripos():查找字符串首次出现的位置(不区分大小写) 写法:stripos ( string $haystack , string $needle [, int $offset = 0 ...

  3. Runtime获取类的属性列表和方法列表

    Runtime获取类的属性列表和方法列表 Runtime很强大,他使得OC中没有真正意义上的私有属性和私有方法,我们可以利用OC的运行时拿到一个类的任何方法和任何属性,然后动态的去调用方法,objc_ ...

  4. resizable可调整尺寸组件

    Resizable 可调整尺寸不依赖于其他组件 1.用法:通过标记创建可调整尺寸(resizable)对象 <div class="easyui-resizable" sty ...

  5. 【python】matplotlib进阶

    参考文章:https://liam0205.me/2014/09/11/matplotlib-tutorial-zh-cn/ 几个重要对象:图像.子图.坐标轴.记号 figure:图像, subplo ...

  6. AS3帮助手册

    http://help.adobe.com/zh_CN/FlashPlatform/reference/actionscript/3/index.html

  7. C语言编程的两个工具:valgrind和core

    检查内存泄漏: valgrind --leak-check=full ./ecox_rws_helper 来检查内存泄漏 程序崩溃看错误: ulimit -c unlimited 然后执行程序,会在当 ...

  8. Unity 2d 的 SpriteMask为游戏表现带来多种可能性

    孙广东  2017.7.22 http://blog.csdn.NET/u010019717           SpriteMask 是Unity 2017.1 开始添加2d功能!,    Spri ...

  9. Hibernate Validator参数校验

    日常开发中经常会遇到需要参数校验的情况,比如某个字段不能为空.长度不能超过5等都属于参数校验的范围.对于简单的参数校验通过写几个if-else判断语句就搞定,但是对于复杂的多个参数校验的情况,就不是那 ...

  10. 为什么Android无法设置无标题栏?

    首先我用的是Android Studio开发,但几乎试过了所有的方法,都无法设置无标题栏,最后改了一下style才解决 要在parent的值里面要加Base.····· 然后问题就解决了,这样所有的标 ...