Java Web JSP的基础知识与用法

目录

一、JSP的页面结构

二、JSP的编译指令

三、page的指令

四、操作指令及其用法

五、JSP代码

1. <%!...%>

2. <%...%>

(1)变量的声明与使用

(2)方法的声明与使用

(3)代码块

六、JSP内置隐含对象概述

1、out 对象

2、response 对象

3、request 对象

4、application 对象

5、session 对象

6、cookie 对象

注:

1)得到Form表单的信息续


 

一、JSP的页面结构

         •编译指令:<%@...%>

         •操作指令:<jsp:…/>

         •JSP代码: 1. <%!...%>

                             2. <%...%>

二、JSP的编译指令

         •page指令:<%@ page...%>

         •include指令:<%@ include...%>

         •taglib指令:<%@ taglib...%>

三、page的指令

         1.language标记    <%@ page language="java"%>

         2.extends标记      <%@ page extends="mypackage.myclass"%>

         3.import标记        

<%@page import="java.sql.*, java.util.*"%>

‘,’注意逗号


<%@ page import=“java.util.*”,”java.io.*”,

   ”java.awt.*” %>

‘,’注意逗号上面的逗号等价于下方三个


1.<%@ page import=“java.util.*” %>

2.<%@ page import=“java.io.*” %>

3.<%@ page import=“java.awt.*”%>

         4.errorPage标记

                       errorPage用来设定当JSP页面出现异常(Exception)时,所要转向的页面。

         5.isErrorPage标记

         6.contentType标记                contentType= “text/html;charset=GBK”

         7.isThreadSafe标记

         8.session标记              session定义当前JSP页面中是否要用到session,默认值为“true”。

         9.include指令                <%@ include file = ”logo.htm“%>

         10.taglib指令的语法为:<%@ taglib  uri=”tagLibraryURI”  prefix=”tagPrefix”  %>

四、操作指令及其用法

         •jsp:include 指令

                           <jsp:include page=“test.htm”/>

                           注:jsp:include指令必须以“/”结束,功能和include指令相同

         •jsp:forward 指令

                           <jsp:forward page=”test2.jsp“/>

         •jsp:param 指令

                           <jsp:param name="oper" value="add"/>”

                           例:

                               <jsp:forward page=“myjpage.jsp”>

                               <jsp:param page=“param1” value=“value1”/>

                               <jsp:param page=“param1” value=“value2”/>

                               </jsp:forward>

         •jsp:useBean 指令

         •jsp:setProperty 指令

         •jsp:getProperty 指令

 

五、JSP代码

1. <%!...%>

2. <%...%>

(1)变量的声明与使用

<%@ page contentType="text/html;charset=GBK" %>
<%!int i=0;  %>
<%
  i++;
  out.print(i);
%>个人访问本站

 

(2)方法的声明与使用

<%@ page contentType="text/html;charset=GBK" %>
<%! int number=0;     
   synchronized void countPeople() { 
	   number++;
     }
%>
<%
countPeople();  
%>
您是第<%out.print(number);%>个访问本站的客户

(3)代码块

<%@ page contentType="text/html;charset=GBK" %>
<%int i=0;  %>
<%
  i++;
  out.print(i);
%>个人访问本站

六、JSP内置隐含对象概述

1、out 对象

javax.servlet.jsp.JspWriter

out对象的语法是:       out.print()和out.println  

例如:out.println(“<h1>Hello,JSP</h1>”);

其他常用的方法有:     

  • out.write ()
  • out.newLine()  
  • out.flush()   
  • out.close()
<%@ page contentType="text/html;charset=GBK" %>
<%
	out.println("hello");
	out.newLine();
	out.write("hello");
%>
<%="hello"%>
<%
   out.close();
%>


output:
hello hello hello

2、response 对象

javax.servlet.http.HttpServletResponse

三个常见的应用:

1)网页转向

网页转向用到的是sendRedirect()方法,语法格式为: response.sendRedirect("URL地址");

与jsp:forward标记的区别

用法举例

<!-- 转向4-01.jsp -->
<%@ page contentType="text/html;charset=GBK" %>
<%
	response.sendRedirect("4-01.jsp");
%>

2)动态contentType响应 

contentType的语法结构是: setContentType(“ text/html;charset=GB2312”);

也可以设置为其他一些类型,如:text/plain、application/x-msexcel和application/x-msword等。

<%@ page contentType="text/html;charset=GBK" %>
<HTML>
	<BODY>
	<P>response对象 <BR>setContentType方法
	<P>将当前页面保存为word文档吗
	<%
	response.setContentType("application/msword;charset=GB2312");
	%> 
	</BODY>
</HTML>

3)HTTP文件头响应

该方法的语法格式为:response.setHeader();

<%@ page contentType="text/html;charset=GBK" %>
<%@ page import="java.util.*" %>
<P>现在的时间是:<BR>
<% out.println(""+new Date());
   response.setHeader("Refresh","5");
 %>

output 如图:

3、request 对象

javax.servlet.HttpServletRequest

请求信息的内容包括:  

请求的头信息   

系统信息     

请求的方式(GET或POST)   

请求的参数名称和参数值等信息

4、application 对象

5、session 对象

6、cookie 对象

注:

1)得到Form表单的信息续

<!-- html文件 -->
<HTML><BODY>
	<FORM ACTION="4-15.jsp" METHOD="POST">
		<P>姓名:<INPUT TYPE="TEXT" SIZE="20" NAME="UserID"></P>
		<P>密码:<INPUT TYPE="PASSWORD" SIZE="20" NAME="UserPWD"></P>
		<P><INPUT TYPE="SUBMIT" VALUE="提 交"> </P>
	</FORM>
</BODY></HTML>
<!-- JSP 01 文件 -->
<%@ page contentType="text/html;charset=GBK" %>
<%
request.setCharacterEncoding("GBK");
String strUserName = "";
String strUserPWD = "";
strUserName = request.getParameter("UserID");
strUserPWD = request.getParameter("UserPWD");
%>
姓名:<%=strUserName%><br>
密码:<%=strUserPWD%>
<!-- JSP 02 文件 -->
<%@page contentType="text/html;charset=GBK"%>
<%@page import="java.util.*"%>
<%
String current_param = "";
request.setCharacterEncoding("GBK");
Enumeration params = request.getParameterNames();
while(params.hasMoreElements()) {
	current_param = (String)params.nextElement();
    out.println("Name:   " + current_param + "<br>");
	out.println("Values: " + request.getParameter(current_param) + "<br>");}
%>

猜你喜欢

转载自blog.csdn.net/qq_41664272/article/details/88817150