【笔记】Jsp学习总结

jsp环境搭建

jsp是在服务器端运行的,所以需要一个web容器当作服务器来作为运行环境,一般推荐tomcat。实际上jsp运行所需的环境和servlet一样

所以如果搭建好了servlet环境就可以直接运行jsp文件了,如果没搭建好,可以参考下我曾经写过的在eclipse下配置Servlet环境及使用超详细教程

jsp的组成:

简单的来说,在HTML页面中加入java程序段和jsp标记,就构成了jsp界面。

jsp的运行的过程:

 

jsp的语法:

    <% ... %> :用来写java代码块       <%out.print("hello!");%>

                      ps:在一个代码块中声明的变量是JSP页面的局部变量,只在当前页面中有效。 

    <%! ... %> :一些变量和方法的声明 <%! int a=1,b=2;%>

                       ps:在JSP页面被编译执行的时候,整个页面被编译成一个类,这些变量是JSP页面类的成员变量。

    <%= ... %> :java表达式              <%=a+b%> 
    <%@ ... %> : 设置与整个JSP页面相关的属性 <%@ page language="java" %>

jsp的一个简单实例

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>hello</title>
</head>
<body>
	<%!int a = 1, b = 2;
	   String hello = "helloWorld ";
    %>
	<%
		out.print(hello);
	%>
	<p>a+b=<%=a + b%></p>

</body>
</html>

注意:要把jsp程序放到webContext文件夹下,但是不要放到META-INF或者WEB-INF文件夹下,不然运行时会产生404的错误,因为META-INF或者WEB-INF文件夹里的内容是不对外发布的。

jsp 默认导入的java包

java.lang.*
javax.servlet.*
javax.servlet.http.*
javax.servlet.jsp.*

当新建jsp程序时,就自动导入了上述的包,在程序里可以直接使用上列的包下包含的类

如果需要使用其他包,可以使用jsp指令导入,如:

<%@page import="java.io.*"%>

jsp 常用的指令

1. page指令
    声明页面编程语言语言,页面类型,页面编码方式:<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    设置继承父类:<%@page extends="mypackage.myclass"%> (继承mypackage下的myclass类)(默认情况下继承 HttpJspBase
    引入要使用的类 :<%@page import="java.util.io.*,java.sql.*"%> 有些类在默认情况下已经被加入到当前JSP页面,而不需要特殊声明,
    设置页面出错时所转向的页面:<%@page page errorPage="/error/error_page.jsp"%>                                                            
2. include指令
    include指令用来指定怎样把另一个文件包含到当前的JSP页面中,这个文件可以是普通的文本文件,也可以是一个JSP页面。例如:“<%@ include file = ”logo.htm“%>”。
3. jsp:forward指令 
    实现页面间的跳转,ps:使用该功能时,浏览器的地址栏中地址不会发生任何变化。 <jsp:forward page=”test2.jsp“/>
4. jsp:param指令 
    可以在执行jsp:forward操作动作时,追加参数,按照“名字/值”的方式进行传递。“<jsp:param name="oper" value="add"/>”

jsp 隐藏对象

JSP根据Servlet API 规范提供了一些内置对象,不用事先声明就可以使用标准的变量来访问这些对象。隐藏对象如下:

    request:        HttpServletRequest类的实例,功能是用来得到客户端的信息
    response:        HttpServletResponse类的实例,功能是处理服务器端对客户端的一些响应
    out    :           PrintWriter类的实例,用于把结果输出至网页上,out对象的生命周期是当前页面,因此对于每一个JSP页面都有一个out对象
    session:        HttpSession类的实例,用来保存单个用户访问时的一些信息。
    application:    ServletContext类的实例,与应用上下文有关,用来保存网站的一些全局变量
    config:            ServletConfig类的实例
    pageContext    :    PageContext类的实例,提供对JSP页面所有对象以及命名空间的访问
    page:            类似于Java类中的this关键字,实质上page对象代表jsp对象本身,或者说代表编译后的Servlet对象
    Exception:        Exception类的对象,代表发生错误的JSP页面中对应的异常对象, ps:只有在JSP页面的page指令中指定isErrorPage属                                性为true后,才可以在页面中使用exception对象。
    cookie:            将服务器端的一些信息写到客户端的浏览器中

 

  • 14
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值