JSP入门解析

1 JSP简介

1.JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。
2.JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。网页开发者们通过结合HTML代码、XHTML代码、XML元素以及嵌入JSP操作和命令来编写JSP。
3.JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。
4.JSP标签有多种功能,比如访问数据库、记录用户选择信息、访问JavaBeans组件等,还可以在不同的网页中传递控制信息和共享信息。

2 JSP生命周期

1.编译阶段:
 Servelet容器编译Servelet源文件,生成servelet类
2.初始化阶段
 加载与JSP对应的Servelet类,创建其实例,并调用它的初始化方法
3.执行阶段
 调用与JSP对应的Servelet实例的服务方法
4销毁阶段
 调用与JSP对应的Servelet实例的销毁方法,然后销毁Servelet实例

3 指令:

1.<%@ page … %>定义页面的依赖属性,比如脚本语言、error页面、缓存需求等等
2.<%@ include … %> 包含其他文件
3.<%@ taglib … %>引入标签库的定义,可以是自定义标签

4注释:

  1. html注释: <!-- -->:只能注释html代码片段
  2. jsp注释:<%-- --%>:可以注释所有
  3. 标签:<% 代码片段%>

5九大内置对象:

1.final javax.servlet.jsp.PageContext pageContext;
  PageContext类的实例,提供对JSP页面所有对象以及命名空间的访问
2.javax.servlet.http.HttpSession session
  HttpSession类的实例
3.final javax.servlet.ServletContext application;
  ServletContext类的实例,与应用上下午有关
4.final javax.servlet.ServletConfig config;
  ServletConfig类的实例
5.javax.servlet.jsp.JspWriter out
  PrintWriter类的实例,用于把结果输出至网页上
6.final java.lang.Object page = this;
  类似于Java类中的this关键字
7.final javax.servlet.http.HttpServletRequest request
  HttpServletRequest类的实例
8.final javax.servlet.http.HttpServletResponse response
  HttpServletResponse类的实例
9.Exception
  Exception类的对象,代表发生错误的JSP页面中对应的异常对象

6JSP作用域

1.pageContext(页面域):pageContext有效范围仅限于当前页面 , 可以近似理解为this对象 , 在离开当前页面后 , 无论是request或redirect等方式离开的 , 当前页面的相关属性值都会丢失。

2.request(请求域):request表示一次请求 , 它的有效范围是当前请求周期 . 所谓请求周期 , 就是从http发送请求 , 到服务器接收并处理请 , 将结果返回到客户端响应 . 在这一过程中 , 可能使用forward跳转了多个jsp页面 , 而在这多个jsp页面中属性值都有效. 但如果是通过redirect方式进行跳转 , 则重新发送请求 , 这样属性值就会丢失。

3.session(会话域):session有效范围是当前会话。当前会话表示浏览器打开到浏览器关闭这一过程。但这会出现这种情况,如果浏览器一直处于打开状态,这样session永远不会销毁,而且在浏览器关闭时并不会通知服务器,另外session是存放在服务器的内存上,这样对服务器是一种负担,所以通过这种方法来判断:如果一段时间内客户端没有响应,则认为会话结束。

4.application(应用域):application有效范围为整个应用,从应用开启到应用结束。在服务器停止之前,应用没有结束,application对象都有效,可以被所有会话共享。

7.代码示例

写法一:

<%
      for(int i=1;i<=6;i++){
        out.print("<h"+i+">Java是世界上最好的语言!</h"+i+">");
      }
    %>

写法二:

<%
  for(int i=1;i<=6;i++){
%>
<h<%=i%>>Java是世界上最好的语言!!!</h<%=i%>>
<%
  }
%>

代码效果图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值