<%
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. django中如何将多个app归到一个目录下。

    1.当startapps 生成多个app后,为了便于管理,可新建一个apps目录,把应用全部剪切进apps. 如果是在pycharm中,会提示是否自动更新路径,这里要全部选择取消. QQ群交流:697 ...

  2. redis高级应用特征

    Redis高级应用特性 1.安全性 2.主从复制 3.事务处理 4.持久化机制 5.发布订阅消息 6.虚拟内存的使用 安全性 设置客户端连接后进行任何其他指定前需要使用的密码. 警告:因为redis速 ...

  3. redis的list类型以及其操作

    lists类型 给你个图;' lists类型以及操作List是一个链表结构,主要功能是push.pop.获取一个范围的所有值等等,操作中key理解为链表的名字.Redis的list类型其实就是每一个子 ...

  4. charles抓包unknow

    如果能抓到包,可是解析不出请求,那一定是证书问题,注意以下几点: 1.设备安装证书,注意要抓包的每一个设备都要安装证书,每一个设备! 2.pc端也要安装证书 如果以上两点都做到一定可以解析https请 ...

  5. getaddrinfo()详解

    IPv4中使用gethostbyname()函数完成主机名到地址解析,但是该API不允许调用者指定所需地址类型的任何信息,返回的结构只包含 了用于存储IPv4地址的空间.为了解决该问题,IPv6中引入 ...

  6. ss-libev 源码解析udp篇 (4)

    本篇分析remote_recv_cb,这是整个udp转发的反方向,即读取从后端发送过来的数据再发送给前端.对于ss-server,读取到的数据是目标地址的udp服务器发送回来的响应数据,ss-serv ...

  7. keras模型可视化及解决'Failed to import pydot'问题

    1.keras模型可视化 keras.utils.vis_utils模块提供了画出Keras模型的函数(利用graphviz) 该函数将画出模型结构图,并保存成图片: from keras.utils ...

  8. 单一功能学习——百度AI之身份证识别

    以下内容基本是从官方接口文档复制过来的,附带自己封装的代码 时间:2018年4月4日 一.导入工具包 使用maven依赖: <dependency> <groupId>com. ...

  9. js之无缝轮播图

      HTML <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> < ...

  10. ios逆向工程-内部钩子(Method Swizzling)

    Method Swizzling(方法调配) 怎么说呢,先了解什么是钩子为什么用钩子,学过C++的朋友应该清楚,hook就是用来获得(截断/改变)底层调用的方法.这样我们可以自由的修改或者读取一些想要 ...