暑假自学JAVA Web心得(2)

3.JSP脚本

1.JSP中应用代码片段

格式:<% Java代码或是脚本代码 %>

在页面请求处理 期间被执行。通过java代码可以定义变量或是流程控制语句,通过脚本代码可以应用JSP的内置对象在页面输出内容、处理请求和响应并访问session会话等。

2.JSP表达式

格式:<%= 表达式 %>

用于在页面中输出信息。注意:在=和%之间不能有空格

3.声明标识

格式:<%! 声明变量或方法的代码%>

在JSP页面中也可以如编写Java文件一样定义成员变量及成员方法,定义的变量和方法是全局的 。

脚本片段和声明标识的区别:通过声明标识创建的变量和方法,在当前JSP页面中有效,它的生命周期是从创建开始到服务器关闭结束;

而代码片段创建的变量或方法,也是在当前JSP页面中有效,但它的生命周期是页面关闭后,就会被销毁。并且,声明标识是定义变量和方法,而代码片段不能用来定义方法。

4.包含动作标识和文件包含指令

想要包含页面有两种方式:

①使用文件包含指令include。它属于JSP的指令标识,可以将一个JSP页面包含到另一个JSP页面中,实现JSP页面的重用。

格式:<%@ include file="path"%>

原理:被包含文件中所有内容会被原样包含到JSP页面中。即使是被包含文件中有JSP代码,在包含时也不会被编译执行,将两个页面组合成一个页面后编译处理,最后返回结果页面。

②使用包含动作标识jsp:include。它属于JSP的动作标识,同样可以包含其他页面。

格式:<jsp:include page="url"
flush="false/true" /> 或 <jsp:include
page="url" flush="false/true"> </jsp:include>

原理:将被包含的页面编译处理后将结果包含在页面中。Web会首先编译被包含的页面。然后将编译处理后的结果返回包含在页面之中,再编译包含页面,最后将两个页面组合的结果回应给浏览器。

区别:1、include指令通过file属性指定被包含的文件,并且该属性不支持任何表达式;<jsp:include>动作标识通过page属性指定被包含的文件,而且该属性支持JSP表达式。

2、使用include指令时,被包含的文件内容会原封不动地插入到包含页中,然而JSP编译器将合成后的文件最终编译为一个Java文件;使用<jsp:inlcude>动作标识包含文件且该标识被执行时,程序会将请求转发(不是重定向)到被包含的页面并将执行结果输出到浏览器中,然后返回包含页面继续执行后面的代码。因为服务器执行多个文件,所以JSP编译器会分别编译这些文件。

3、在应用include指令包含文件时由于被包含的文件最终会生成一个文件,所以在被包含文件和包含文件中不能有重名的变量或方法;在应用<jsp:include>动作标识包含文件时,由于每个文件单独编译,所以在被包含文件和包含文件中重名的变量和方法不冲突

4、include指令包含的只能是静态页面,而<jsp:include>动作标识能包含静态或动态页面。

时间: 2024-07-29 20:25:07

暑假自学JAVA Web心得(2)的相关文章

暑假要自学Java了

和大二的学长学姐组队参加项目,开篇的一部分就要用到Java... 高中的时候短暂接触过,但是只学到了循环嵌套,跟大学的课程要求相差甚远. 暑期自学,就当是提前半年预习了. 入手了一本我们专业的旧教材<Java语言程序设计·基础篇>,Y·D·Liang编的,不知道风评如何,估计入门应该足够了,他们让我主要看GUI的知识…… 各位如果有好的参考资料,麻烦推荐一下,谢谢! 暑假要自学Java了

java多线程心得

多并发的时候,在什么情况下必须加锁?如果不加锁会产生什么样的后果. 加锁的场景跟java的new thread和Runnable的关系是什么? 看看java的concurrentMap源码. 还有spring 的web.xml启动执行源码 spring aop http://www.cnblogs.com/FDROSE1001/p/3661895.html activemq的本质是什么? java的jms hibernate由配置文件映射到实体类的本质是什么? java反射 spring aop

Java Web开发及应用软件方向的学习计划

从接触计算机以来,一直抱有很浓厚的兴趣.我并不擅长与人交际,与机器对话可能更有性格方面的优势.虽然我很想做出一些改变,但总得需要时间和历练,暂时也只能这样了~ 一直很向往代码的神秘,在梦之站待过两年时间后更是对程序猿的生活抱有幻想,我觉得我适合做这件事情,也很有兴趣.中途我去为考研准备了一段时间,但后来我发现我对读研似乎没有很大的愿望,不是因为考研难,只是遵循了自己真正的想法.没有更高的学历,又出身一个不太牛逼的一本,将来的生活是无法预测的,我根本不确定是否能像某人说得那样走向成功.但现实如此,

【Java学习系列】第4课--Java Web相关

本文地址 分享提纲: 1.概述 2. Jsp基础 2.1 1.概述 1)[来源和先导] 本文主要的java web的教程来源JSP是 菜鸟教程JSP 和 天码营Java Web.     主要的先导工作来源知乎,请参考 自学Java怎么入门  和 如何系统地学习java web技术 2)[脑图] Java Web思维导图 2. Jsp基础 2.1)[简介] JSP全称Java Server Pages,是一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开头以

自学 Java 怎么入门

自学 Java 怎么入门? 595赞同反对,不会显示你的姓名 给你推荐一个写得非常用心的Java基础教程:java-basic | 天码营 这个教程将Java的入门基础知识贯穿在一个实例中,逐步深入,可以帮助你快速进入Java编程的世界.万事开头难,逐步跟着这个教程走一遍,对Java应该就会有一种入门的感觉了.然后再去学习更高级的主题,或者更深入地学习其中的某些知识点. 第1课 Java开发环境安装与配置第2课 Eclipse的安装与使用第3课 第一个Java程序第4课 面向对象基础第5课 基本

如何自学 Java 开发

如何自学 Java 开发? 568赞同反对,不会显示你的姓名 李艾米IT路上学习 568 人赞同 Java Web前端技术 HTML 入门视频课程 1 HTML 简介 2 HTML基本结构[ 3 HTML的BODY标签以及颜色的设定 4 HTML之br标签 5 HTML之p标签 6 HTML之pre标签. 7 HTML之center 8 HTML之引文标签 9 HTML之hr 10 HTML之address 11 HTML之meta 标签 12 HTML之特殊字符 13 HTML之注释 14 H

OSChina 技术周刊第二十期 —— 使用 Docker 搭建 Java Web 运行环境

每周技术抢先看,总有你想要的! 移动开发 [软件]移动端web框架 Frozen UI [博客]Android各种Adapter的用法 服务端开发/管理 [翻译]2014 Docker 的竞争随即而来 [翻译]Docker 和 PID 1 僵尸进程问题 [软件]Node.js 串口读写包 node-serialport [软件]Nginx 模块 Nginx-Clojure [博客][Web安全之实战] 跨站脚本攻击XSS [博客]Tiny框架应用实践之Tiny社区 [博客]Laravel大型项目

Java学习心得之 Linux下搭建JavaWeb环境

1. 前言2. Java安装3. tomcat安装4. tomcat简单命令 一.前言 本篇博文记录了Linux下JavaWeb环境的搭建,本文内容基于以下文章: http://m.blog.csdn.net/article/details?id=7727927(ubuntu下搭建java web开发环境的详细步骤)http://blog.csdn.net/xiaoyao6650/article/details/4029946 (用Ant编译Java Web程序) 关于JavaWeb的学习资料h

《Java web 开发实战经典》读书笔记

去年年末,也就是大四上学期快要结束的时候,当时保研的事情确定了下来,终于有了一些空闲的时间可以学点实用的技术. 之前做数据库课程设计的时候,也接触过java web的知识,当时做了一个卖二手书籍的网站,但是由于掌握的技术不够,最后做出来的东西勉强能应付答辩.所以,想抽出时间继续昨晚这个项目.当时,我有些找工作的同学,已经在北京经历了找工作的艰辛,所以他们时常会举办一些小讲座,给学弟学妹传授找工作的经验,我也从这上面学到不少东西.<Java web 开发实战经典>这本书便是以为找工作的同学浩哥给