首页 > 代码库 > JSP动作--JSP有三种凝视方式
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=http://www.mamicode.com/"Value"
param="Parameter“
/>
Out.println(bean对象.getxxxx()); 具有输出的功能
<jsp:setProperty name=“book” property=“name” value=http://www.mamicode.com/“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=http://www.mamicode.com/"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代码区中,不同意直接出如今页面中。//单行凝视 /*多行凝视*/