Java for Web学习笔记(十四):JSP(4)JSP Tag

来源:互联网 发布:vscode搭建rails 编辑:程序博客网 时间:2024/06/05 22:36

从jsp:include中,我们应该可以猜测到jsp tag是加入特定的java代码。

formard

<jsp:forwardpage="index.jsp" />将在代码中加入:

_jspx_page_context.forward("index.jsp");

forward()不是重定向(重定向会给出302,指向一个新的URL,浏览器向新的URL发送请求),将请求转置另一个jsp重新处理,而不会再转回来。虽然从java代码上根据tag的插入位置,在此之前的代码均已执行,包括charset设置,可能还包括一些HTML语句的输出,但是forward()之后,将重新设置和重新输出,原jsp的设置,包括charset,已经输出的内容,将无效。

useBean、getProperty、setProperty

我们定义一个Bean:UserBean,有两个属性name和passwd。

package cn.wei.flowingflying.chapter04;public class UserBean {private String name;private String passwd;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPasswd() {return passwd;}public void setPasswd(String passwd) {this.passwd = passwd;}}

在某个HTML中,给出下面的代码,按button后发起一个POST的请求给register.jsp

<form action="register.jsp" method="post">        <table>            <tr><td>姓名:<input type="text" name="name"></td></tr>            <tr><td>密码:<input type="password" name="passwd"></td></tr>            <tr><td><input type="submit"></td></tr>        </table></form>

register.jsp如下:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><jsp:useBean id="user" class="cn.wei.flowingflying.chapter04.UserBean"/><jsp:setProperty property="*" name="user"/><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Register</title></head><body><h2>用户名:<%= user.getName() %></h2><h2>密码:<%= user.getPasswd() %></h2></body></html>

例子中的L2和L3也可以写为:

<jsp:useBean id="user" class="cn.wei.flowingflying.chapter04.UserBean"/><jsp:setProperty property="name" name="user" param="name"/><jsp:setProperty property="passwd" name="user" param="passwd"/>

当中property中是对应Bean中的属性,而param是对应POST的参数。

plugin

用于价值java applet。纯HTML代码页可以价值java Applet,这个没有太大的意义。例子如下:

<jsp:plugin type="applet" code="MyApplet.class" jreversion="1.8">  <jsp:params>    <jsp:param name="appletParam1" value="paramValue1"/>  </jsp:params>  <jsp:fallback>    The browser you are using does not support Java Applets. You might consider switching browsers.  </jsp:fallback></jsp:plugin>


相关链接: 我的Professional Java for Web Applications相关文章

0 0
原创粉丝点击