3--jsp编译指令和动作指令

1.三个编译指令

1.1page指令(针对当前页面的指令)常用属性

(1)language:声明当前jsp程序的脚本语言的种类,默认是java

(2)contentType:设置mime类型,设置生成网页的编码(text/html表明发送给浏览器的是网页数据)

(3)charset:指定服务器生成网页的编码

(4)pageEncoding:设置jsp程序本身的编码

(5)import:倒入java类

(6)errorPage:表示如果发生异常错误时,网页会被重新指向指定的URL

(7)isErrorPage:表示此JSP Page 是否为专门处理错误和异常的网页

1.2include指令(指定包含另一个页面的指令)常用属性

(1)<%@ include file="要导入的jsp页面或文本文件" %>

1.3taglib指令(用于定义和访问自定义标签)常用属性

(1)<%@ taglib prefix="tagPrefix" uri="tagLibraryURI" %>

2.七个动作指令

2.1forward指令(将页面转发到另外的页面)常用属性

(1)不带参数:<jsp:forward page="login.jsp"></jsp:forward>

(2)带参数:

(2.1)<jsp:forward page="login.jsp">
    <jsp:param value="xiaoyu" name="username"/>
    <jsp:param value="hello" name="passwd"/>
</jsp:forward>

(2.2)<%
    String username = request.getParameter("username");
    String passwd = request.getParameter("passwd");
    out.println(username);
    out.println("<br/>");
    out.println(passwd);
%>

 2.2include指令(用于JSP程序众包含一个静态【HTML文件,就是将静态文件的内容加入到当前的JSP程序中】或动态【JSP文件,这个被包含的JSP文件还会被JSP引擎执行,然后才会将生成的内容加入到当前的JSP程序中来】文件)常用属性

静态导入和动态导入区别:

静态导入是将被导入页面的代码完全融入,两个页面完全融合成一个完整的servlet。静态导入时被导入页面的编译指令会起作用,包括include编译指令和include动作指令中包含静态文件

动态导入是将servlet中使用include引用被导入页面的内容。动态导入时被导入页面的编译指令会失去作用,只是插入到被导入页面的Body体里,包括include动作指令中包含动态文件

(1)静态文件:<jsp:include page="body.html"></jsp:include>

(2)动态文件(可传递参数):

<jsp:include page="header.jsp">
<jsp:param value="red" name="bgcolor"/>
</jsp:include>

2.3useBean(可以在jsp程序中实例化一个或者若干个javaBean组件,这些被实例化的javaBean组件可以在jsp程序的其它地方被调用)指令常用属性

javaBean必须被符合的约定:

(1)有一个公共的默认的构造函数

(2)所有属性必须通过getter和setter进行访问

(3)必须都是可序列化的

package com.xiaoyu.entity;

import java.io.Serializable;

public class UserEntity implements Serializable {
    private String userName;
    private String passWord;
    public UserEntity(){
        super();
    }
    public String getUserName(){
        return userName;
    }
    public void setUserName(String userName){
        this.userName = userName;
    }
    public String getPassWord(){
        return passWord;
    }
    public void setPassWord(String passWord){
        this.passWord = passWord;
    }
}
javaBean
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!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>录入注册信息</title>
</head>
<body>
    <form action="newRegister.jsp" method="post">
    用户名:<input type="text" name="userName"/>
    密码:<input type="password" name="passWord"/>
    <input type="submit" value="提交"/>
    </form>
</body>
</html>
register.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!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>注册信息处理</title>
</head>
<body>
<jsp:useBean id="user" class="com.xiaoyu.entity.UserEntity"></jsp:useBean>
<jsp:setProperty property="userName" name="user"/>
<jsp:setProperty property="passWord" name="user"/>
<%
    String username = request.getParameter("userName");
    String password = request.getParameter("passWord");
    out.println(username);
    out.println("<br/>");
    out.println(password);
%>
<br/>
<jsp:getProperty property="userName" name="user"/>
<jsp:getProperty property="passWord" name="user"/>
</body>
</html>
newregister.jsp
原文地址:https://www.cnblogs.com/BelieveFish/p/6921778.html