JSP动作--JSP有三种凝视方式
一、JSP动作
动作是特殊的标记,通过一个动作标记能够实现多行Java代码实现的效果。能够动态插入文件、重用JavaBean组件、导向还有一个页面等。
动作元素和指令元素不同,动作元素是在client请求时动态运行的,每次有client请求时可能都会被运行一次,而指令元素是在编译时被编译运行,它仅仅会被编译一次。
<jsp:useBean>
useBean动作用于创建引用,并将现有的Bean组件嵌入JSP。
jsp:useBean>
– useBean动作用于创建引用,并将现有的Bean组件嵌入JSP 。
– useBean的语法:
<jsp:useBean id="BeanName" class="BeanClass" scope="page|request|session|application"/>
比如,<jsp:useBean id=“book” class=“com.web.beans.Book” scope=“page” />
在运行时,Web容器会检查这个JavaBean的对象是否已经存在,假设存在就使用存在的JavaBean对象,反之生成一个新的JavaBean对象。相对于:
<% com.web.beans.Book book=null;
if(pageContext.getAttribute(“book”)==null){
book=new com.web.beans.Book();
pageContext.setAttribute(“book”,book);
}else{
book=(Book)pageContext.getAttribute(“book”);
}
%>
I jsp实现 <jsp:useBean id="book" class="com.csdn.beans.Book" scope="session"/>
II java代码 Book book=session.getAttribute(“book”);
If(book==null){
Book book=new Book();
Session.setAttribute(“book”,book);
}
Return book;
上面的I II这两个功能一样
<jsp:setProperty>
setProperty动作用于设置useBean中指定的Bean的属性的值。setProperty动作指定JavaBean的名称、属性名、属性值和參数,用于赋给Bean的属性。
setProperty的语法:
<jsp:setProperty name="BeanAlias"
property="PropertyName" value="Value"
param="Parameter“
/>
Out.println(bean对象.getxxxx()); 具有输出的功能
<jsp:setProperty name=“book” property=“name” value=“Java SE程序设计精讲”/>
等价于<%book.setName(“Java SE程序设计精讲”);%>
(2)<jsp:setProperty name=“book” property=“name” param=“bookName”> 用request对象中的參数bookName的值给JavaBean中的name属性赋值。等价于
<%book.setName(request.getParameter(“bookName”))%>
(3)<jsp:setProperty name=“book” property=“name”>
request对象中的參数名称和JavaBean中属性名一样。等价于<%book.setName(request.getParameter(“name”))%>
星号(*)字符可用于指定Bean的全部属性。
<jsp:setProperty name=“book” property=“*” />
<jsp:include>
include动作用于将其它HTML页面或JSP页面中的内容合并到当前页面,或将当中的文件插入到当前页面。
不带參数的include动作:
<jsp:include page="weburl" flush="true"/>
带參数的include动作:
<jsp:include page="weburl" flush="true">
<jsp:param name="ParamName" value="ParamValue"/>
<jsp:include>
二、JSP有三种凝视方式
HTML凝视(输出凝视):指在client查看源码时能看见凝视。比如,
<!-- this is an html comment.it will show up int the response. -->
JSP页凝视(隐藏凝视):指凝视尽管写在JSP程序中,但不会发送给客户,因此在client查看源码时不能看见凝视。这种凝视在JSP编译时被忽略掉。
<%--this is a JSP comment.it will only be seen in jsp code--%>
Java凝视:仅仅能出如今Java代码区中,不同意直接出如今页面中。//单行凝视 /*多行凝视*/
JSP动作--JSP有三种凝视方式的更多相关文章
- 复习:JSP基本的语法(JSP凝视 + JSP指令 + JSP脚本元素 + JSP动作元素)
JSP原理: 1. 对于每个请求.jsp容器都会创建一个新的线程来处理它: 2. Servlet容器载入jsp后转换成的servlet(.class文件)是常驻内存的,所以对应速度一般比較 ...
- JSP 动作元素
JSP动作元素 1. 动作元素分类 用来动态的包含文件.网页跳转及使用JavaBean组件等. 语法:<jsp:XXX />或者<jsp:XXX></jsp:XXX&g ...
- JavaBean用JSP调用和使用JSP动作标签的区别
javabean的类可以用jsp动作标签实例化并使用. <!-- 下面这句是对Javabean类person的引用,引用的实例是p2 --> <jsp:useBean id=&quo ...
- 在一个JSP页面中包含另一个JSP页面的三种方式
转载自://http://blog.163.com/neu_lxb/blog/static/179417010201121343132918/ (1)include指令 includ ...
- Java学习-038-JavaWeb_007 -- JSP 动作标识 - plugin
plugin 动作时用来在 JSP 页面中加载 Java Applet 或者 JavaBean 组件,语法格式如下所示: <jsp:plugin type="bean|applet&q ...
- JSP运行过程 JSP脚本 静态动态包含 jsp指令 jsp内置对象jsp四大作用域 jsp动作元素 EL表达式 JSTL 设计模式 JSP开发模式 EL内置对象
Day38 JSP JSP的运行过程具体如下: (1)客户端发出请求,请求访问JSP文件. (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果 ...
- Tip:JSP标签也称之为Jsp Action(JSP动作)元素
JSP标签也称之为Jsp Action(JSP动作)元素,它用于在Jsp页面中提供业务逻辑功能,避免在JSP页面中直接编写java代码,造成jsp页面难以维护. ================ &l ...
- 一个jsp页面引入另一个jsp页面的三种方式 及静态引入和动态引入的区别
转载下, 转载自:http://blog.csdn.net/fn_2015/article/details/70311495 1.第一种:jstl import <c:import url=& ...
- 【Head First Servlets and JSP】笔记19:JavaBeans与JSP动作元素(<jsp:setProperty.....>、<jsp:getProperty.....>)
内容来自imooc. 1.什么是JSP动作元素 2.在JSP页面中如何使用Javabeans <jsp:......>表示这是一个JSP动作元素 3.使用JSP动作元素创建JavaBean ...
随机推荐
- animation-timing-function中的cubic-bezier(n,n,n,n)
cubic-bezier即为贝兹曲线中的绘制方法.图上有四点,P0-3,其中P0.P3是默认的点,对应了[0,0], [1,1].而剩下的P1.P2两点则是我们通过cubic-bezier()自定义的 ...
- shell编程备忘
1.脚本存放目录 workspace="$(cd "$(dirname "$0")"; pwd)" 2.输出 其中 command 代表指 ...
- ORACLE的CONNECT和RESOURCE角色权限
最近在处理数据库的用户权限问题,之前惯性思维,觉得给用户授权RESOURCE权限之后,用户的一般权限都会有,等到发现用户有RESOURCE角色,却没有创建视图的权限之后,才发现这部分还是一知半解啊,所 ...
- javascript代码放置位置对程序的影响
在编写html文档时,javascript可以放置的位置有两个地方<head>或者<body>,但是放置的地方,会对 JavaScript 代码的正常执行会有一定影响.由于 H ...
- PHP MYSQL读取中文乱码的解决办法
其他试了很多种办法,结果最直接最简单的办法就是在SELECT前先发送设置.如下 mysqli_query($con,"SET NAMES 'UTF8'"); mysqli_quer ...
- Box model小心得
最近在研究css~当设置一个元素width后~有时候也会对他设定padding,margin,border值, 每次这样我就心里琢磨,那这个元素的width会变吗,js获取元素的宽度width()指的 ...
- Jquery 学习插件第一天
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title&g ...
- ionic框架,快速开发webAPP神器。
官网地址 http://www.ionicframework.com/ 这个国外框架已经很火了.会使用插件的话更好,例如支付宝支付插件,调用摄像头拍照,二维码扫描,通讯录,文件上传,推送信息等等. 最 ...
- oracle数据泵之解决方案(用户)导入导出。
看到网上有这样的介绍而且很多,但觉得都是大神才能一下子看的懂.自己总结下菜鸟能看懂的. 1.导出. 首先第一步: 操作系统—开始—运行输入“cmd”进入dos界面输入“sqlplus/nolog”按回 ...
- nginx读书日志
2016.12.20 nginx 功能特性: 既可以作为http服务器,也可以作为反向代理服务器或者邮件服务器 基本服务:处理静态文件,处理索引文件以及支持自动索引 nginx服务器中主要由proxy ...