一.JSP
原理:JSP其实就是一个servlet。
Servlet负责业务逻辑处理,JSP只负责显示。开发中,JSP中不能有一行JAVA代码
二.JSP语法
1. JSP模板元素:JSP中HTML标签及文本
2. 脚本:写JAVA代码,<% %>
3. 表达式:用于输出变量及表达式,<%= %>
4. 注释:分为三种
a) <!-- -->:JSP翻译成Servlet时也将进行翻译。页面中也有。
b) <% /*.......*/ %>:JSP翻译成Servlet时会被翻译,但页面(右击源代码)中没有。
c) <%-- .......... --%>:JSP翻译成Servlet时不会被翻译。
三.指令
1. page:此指令可放在JSP页面中的任意位置。作用范围为整个JSP页面
属性:
language:默认值JAVA,目前也只有JAVA
extends:JSP对应的SERVLET的父类
import:导入此JSP页面中所用到的包,类。多个包以逗号分隔,默认已导入的包有:java.lang.*,javax.servlet.*,javax.servlet.http.*,javax.servlet.jsp.*
session:是否创建HttpSession对象,默认为true
buffer:设置缓存,取值none|8kb|sizekb,默认8kb。一般为默认值。
autoFlush:是否自动刷新,true|false,默认true。
isThreadSafe:Jsp对应的Servlet是否实现SingleTreadMode接口。默认为true, false为实现。//实现单线程
errorPage:设置错误页面
在web.xml配置默认错误页面
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/exce.jsp</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
</error-page>
isErrorPage:默认为flase,指示是否生成Throwable对象的引用exception.
contentType:设置HTML中MIME类型的编码,如同Servlet中response.setContentType();
pageEncoding:告知引擎翻译JSP时使用的编码。
isELlgnored:是否忽略EL表达式,JSP2.0以后,默认为false
四.include:
包含:
1. 动态包含
<jsp:include page=”....” />
如有两个JSP文件A,B. A动态包含B,A和B各自翻译成A_jsp.class和B_jsp.class文件,然后容器将两个servlet合并。再输出。
2. 静态包含
<%@ include file=”.....” %>
A和B翻译成一个A_jsp.class文件。已经合并,并给容器。再输出。
2. taglib:
<% taglib uri=”http://java.sun.com/jsp/jstl/core” prefix=”c” %>
五.九大隐式对象
request:
HttpServletRequest
response: HttpServletRequest
session: HttpSession(page指令中session设置true后,才会有)
config: ServletConfig
application: ServletContext
exception: Throwable(page指令中isErrorPage设置为true后,才会有)
page: 当前servlet的引用
out: JspWriter(等同于PrintWriter)
pageContext: javax.servlet.jsp.PageContext;
作用:
a. 可以获取其它8大隐式对象
b. 本身也是一个域对象,作用范围为本页面
提供了操作其他域对象的方法(ServletContext,HttpSession, ServletRequest)
操作自身域对象的方法:
pageContext.getAttribute(Stringname);
pageContext.setAttribute(Stringname,Object value);
pageContext.removeAttribute(Stringname);
操作其它域对象的方法:
Object getAttribute(Stringname,int scope)
scope:PageContext有对应的常量
PageContext.APPLICATION_SCOPE
PageContext.SESSION_SCOPE
PageContext.REQUEST_SCOPE
PageContext.PAGE_SCOPE
voidremoveAttribute(String name,int scope)
voidsetAttribute(String name,Object value,int scope)
当我们只知道有name这么一个参数,但不知道在哪个域中时。可以用:
pageContext.findAttribute(Stringname);
查找的顺序由小到大,page->request->session->context
c. 提供了包含及转发的方法
pageContext.forward(String path);
pageContext.include(String path)
六.四大域对象
pageContext:在本页面中有效
request:
在一次请求及转发的Servlet中有效
session:
在一次会话中有效,直到超时及销毁
application:
在整个web应用有效,生命周期为Web运行期间
原则:域对象越小越好。
七.JSP内置标签(动作元素)
jsp:include:动态包含
jsp:forward:请求转发
jsp:param:传递请求参数
八.JavaBean
1. 有无参的构造方法
2. 私有的字段(字段名小写开头)
3. 提供公共的getter和setter方法。
4. 一般实现java.io.Serialiable(可序列化)接口。
作用:用于封装数据
九.JavaBean的动作元素
1、jsp:useBean
作用:从指定的域范围查找指定名称的对象。找到直接返回;找不到创建该对象的实例,并放到指定的范围中。
范围:page request sessionapplication
属性:
id:引用对象的名称
class:查找的类型
scope:指定的范围。默认值是page
2、jsp:getProperty
获取指定javabean的指定属性的取值,并打印到页面上。如果属性值为null,打印null。
属性:
name:javabean的名称
property:操作的是getter属性
3、jsp:setProperty
作用:设置Javabean的某个属性的值。
属性:
property:属性名称。支持通配符*
name:javabean的名称
value:直接指定值
param:指定请求参数名。
十.JavaWeb的开发模型
1、模型1:JSP+JavaBean
特点:适合开发非常简单的应用。
2、模型2:JSP+Servlet+JavaBean(MVC)
M:模型 JavaBean
V:视图 JSP
C:控制器 Servlet
分享到:
相关推荐
了解JSP 隐式对象的分类和组成 能够运用隐式对象进行JSP 编程 理解Page、Request、Session 和Application 范围的区别
03-JSP隐式对象.ppt
Session对象是一个JSP内置对象,它在第一个JSP页面被装载时自动创建,完成会话期管理。从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。当一个客户访问一个服务器...
可用于初学者学习jsp对象 容易掌握jsp的隐式对象
jsp的九大隐式对象详解
JavaWeb开发技术-JSP隐式对象.pptx
JSP九大隐式对象学习,比较基础,适用入门人群
JSP 作用域与隐式对象[SP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它[1] 是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似...
LS-DYNA显示和隐式求解步骤,一步步教你怎么做,十分详细
完整版Java JSP web开发教程 07_JSP隐式对象(共32页).ppt 完整版Java JSP web开发教程 08_JavaBean和JSP中(共26页).ppt 完整版Java JSP web开发教程 09_JSP表达式语言(共23页).ppt 完整版Java JSP web开发教程...
在JSP页面中,我们通过使用隐式对象可以更加方便地实现我们的效果。隐式对象包含: request response out ---- 输入输出对象 pageContext session application ---- 应用作用域对象 page config ---- Servlet对象...
TP4 JSP 隐式对象TP4
4.jsp内置/隐式对象(9个)----- 笔试 5.jsp标签(动作) 1.EL 表达式概述 2.EL从域中取出数据(EL最重要的作用) 3.EL的内置对象11个 4.EL执行表达式 1.JSTL概述 2.JSTL下载与导入 3.JSTL核心库的常用标签 1...
隐式对象 request 对象
jsp1-4章课件 第1章 JSP开发技术概述2h 第2章 JSP隐式对象2h 第3章 JavaBean 和 JSP中的标准动作2h 第4章 JDBC数据库开发6h
主要介绍了JSP中隐式对象用法,以实例形式分析了JSP隐式对象的定义及使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
jsp+severlet笔记 jsp九大隐式对象 常见错误处理
JavaWeb程序设计入门课件JSP隐式对象共8页.pdf.zip
Java Web程序设计入门
#include #include #include //#define PROCALIM OK typedef struct KeyNode { char ch; struct KeyNode *next; }; #define LEN sizeof(struct KeyNode) struct KeyNode *CreatKeyNode() { struct KeyNode *head...