Java学习路程之JSP

一.什么是JSP(JavaServletPage)
1.JSP是一种运行在服务器端的脚本语言,是用来开发动态网页的,本质就是一个servlet.
基本原理:当JSP页面被第一次访问时,服务器会把JSP文件编译成Java文件(就是一个servlet类),然后把.Java文件编译成.class文件,调用该对象的service()方法,第二次请求同一JSP文件时,直接调用service()方法.
二.JSP的作用

  • 作为请求发起页面,例如显示表单,超链接.
  • 作为请求结束页面,例如显示数据.

三.JSP的三种脚本

  1. <% … %>:java代码片段(常用),用于定义0~N条java语句;
  2. <%= … %>:java表达式,用于输出(常用),用于输出一条表达式(或变量)的结果.
  3. <%! … %>:声明,用来创建类的成员变量和成员方法(基本不用)

四.JSP的九大内置对象
内置对象 类型

	out				JSPWriter
	request			HttpServletRequest
	response		HttpServletResponse
	session			HttpSession
	exception		Throwable
	page			Servlet(this)当前JSP页面,但是使用this代替
	config			ServletConfig
	application		ServletContext
	pageContext		PageContext

1.request对象
是一个域对象,可以获取从servlet转发过来的数据,存活于整个请求链中
2.response对象
将数据响应回浏览器
3.page对象
代表当前的JSP页面,使用this代替
page指令:contentType:声明响应流的字符集;pageEncoding:声明当前页面的字符集;import:用来引入Java中的jar包
4.session对象
HttpSession是Javaweb的内容由服务器创建并保存服务器中,当用户第一次发起请求的时候,服务器会创建session对象会话结束时session就会被销毁,存活在会话期间.
5.out对象
输出对象,相当于PrintWriter
6.pageContext对象
页面域对象,可以操作其它域中的数据(application,session,request域对象),只在当前页面中有效
在session域中存储数据:
参数1:key;参数2:value;参数3: 代表域的整型常量pageContext.setAttribute(“name”,“tom”,PageContext.SESSION_SCOPE);
获取session域中的数据:
pageContext.getAttribute(“name”,PageContext.SESSION_SCOPE);
便捷方式查找key对应的值:
pageContext.findAttribute(“name”);这种方式是从其它三个域对象中根据作用域的从小到大进行查找,找不到返回null.
获取其它的内置对象:
pageContext.getSession();
7.application对象
相当于全局管理者域对象
8.exception对象
异常对象,只有当isEerrorPage为true时才可以使用
9.config对象
JSP 配置对象
五:JSP的动作标签
1.include指令(静态包含)
include是静态包含指令,可以把别的JSP文件引入到当前的JSP文件中,会把当前的JSP文件和引入的文件生成一个.Java文件和一个.class文件

 <%@ include file = "内部路径"%>

2.请求转发

<jsp:forward page="内部路径"></jsp:forward>

3.动态包含
动态包含不会把引入的文件放入到自己的文件中,只是引用,引入的文件也会被加载出.Java和.class文件如果要复用JSP页面尽量使用动态包含

<jsp:include page="内部路径"></jsp:include>

4.封装JavaBean

	<!--id: 实例化的对象名;  class:操作Javabean的全限定类名  实例化的对象放入了页面域中 -->
    <jsp:useBean id="p1" class="com.lanou3g.view.Person"></jsp:useBean>
	<!-- 赋值  name: 操作的Javabean-->
	<jsp:setProperty property="name" name="p1"/>
	<jsp:setProperty property="gender" name="p1"/>
	<jsp:setProperty property="age" name="p1"/>
	<!-- 取值 -->
	<jsp:getProperty property="name" name="p1"/>
	<jsp:getProperty property="gender" name="p1"/>
	<jsp:getProperty property="age" name="p1"/>

六EL表达式
jsp内置对象 EL表达式内置对象

page 	        	  pageScope
request	      		  requestScope
session	      		  sessionScope
application	   	      applicationScope

1.作用:获取域中数据 ;执行运算;获取常见的web对象;调用java的方法
2.使用方式:
方式1: 获取session域中的值,指定域

${sessionSCope.key};

方式2:获取session域中的值,在JSP四大域中查找,找不到返回空字符串

${key};
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值