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 ...
随机推荐
- hdu 5124
bc上的题目,很水,有很多方法做吧,题意大概就是给定你票数,然后让你求出票数最多的那个下标...... 之前我用两个for循环分开写,一个是读入,然后是判断,提交就wa,后来网上看了别人的,就是不能分 ...
- css position 应用(absolute和relative用法)
1.absolute(绝对定位) absolute是生成觉对定位的元素,脱离了文本流(即在文档中已经不占据位置),参照浏览器的左上角通过top,right,bottom,left(简称TRBL) 定位 ...
- 让sublime支持gbk常用编码
Sublime Text 2是一个非常不错的源代码及文本编辑器,但是不支持GB2312和GBK编码在很多情况下会非常麻烦.不过Sublime Package Control所以供的插件可以让Subli ...
- QT5-控件-QScrollArea-可以用于把一个窗口分割为多个-比如根据图片大小显示滚动条
#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QLabel> #incl ...
- 使用IE滤镜实现css3中rgba让背景色透明的效果
让背景透明,听上去不是挺容易的么? 让背景色透明,很容易想到opacity,要兼容IE的话只要加上filter:alpha(opacity=?)就行了,OK,看看这个例子. html: <div ...
- github 提交时候提示 org.eclipse.jgit.errors.ObjectWritingException: Unable to create new object: /usr/local/apache243/ht
只需要执行 chmod -R 777 ./* 把 .git文件权限设置为 777便可以实现.
- EDIT编辑框
编辑框 编辑框的主要作用是让用户输入文本,例如要求用户在编辑框中输入密码的文本. .基础知识 编辑框里的文本可以是单行,也可以是多行,后者的风格取值为 ES_MULTILINE.一般对于多行文本编辑框 ...
- ssh公钥自动登陆
第一步,在服务器上安装ssh服务 sudo apt-get install ssh 通过ssh -v查看是否安装成功 第二步创建本地公钥秘钥对 ssh-keygen -t rsa //创建ssh公钥 ...
- 两段小PYTHON,作啥用的,行内人才懂~~~:(
哎,作也不是,不作也不是.... 下次有更新文件时,直接刷新一次了. #coding: UTF-8 import sys reload(sys) sys.setdefaultencoding( &qu ...
- Visual Studio新建的源文件的默认编码
原来VS新建的源文件默认的编码是根据系统locale选择的.我的是国标2312.我草.可坑死我了.一直不知道. 当时主要是需要用doxygen生成html文档,它默认的输入文件的格式是UTF-8,是不 ...