[JavaWeb基础]jsp
来源:互联网 发布:linux chmod 777 目录 编辑:程序博客网 时间:2024/06/01 10:36
以下内容整理编辑参考:
http://www.runoob.com
什么是jsp
JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。而识别它的方式,是以<%开头以%>结束的标签。
JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,动态地创建网页。
JSP标签有多种功能,比如访问数据库、记录用户选择信息、访问JavaBeans组件等,还可以在不同的网页中传递控制信息和共享信息。
与ASP相比:JSP有两大优势。首先,动态部分用Java编写,而不是VB或其他MS专用语言,所以更加强大与易用。第二点就是JSP易于移植到非MS平台上。与纯 Servlet 相比:JSP可以很方便的编写或者修改HTML网页而不用去面对大量的println语句。与SSI相比:SSI无法使用表单数据、无法进行数据库链接。与JavaScript相比:虽然JavaScript可以在客户端动态生成HTML,但是很难与服务器交互,因此不能提供复杂的服务,比如访问数据库和图像处理等等。与静态HTML相比:静态HTML不包含动态信息。
jsp的处理流程和生命周期
就像其他普通的网页一样,您的浏览器发送一个 HTTP 请求给服务器。Web 服务器识别出这是一个对 JSP 网页的请求,并且将该请求传递给 JSP 引擎。通过使用 URL或者 .jsp 文件来完成。JSP 引擎从磁盘中载入 JSP 文件,然后将它们转化为 Servlet。这种转化只是简单地将所有模板文本改用 println() 语句,并且将所有的 JSP 元素转化成 Java 代码。JSP 引擎将 Servlet 编译成可执行类,并且将原始请求传递给 Servlet 引擎。Web 服务器的某组件将会调用 Servlet 引擎,然后载入并执行 Servlet 类。在执行过程中,Servlet 产生 HTML 格式的输出并将其内嵌于 HTTP response 中上交给 Web 服务器。Web 服务器以静态 HTML 网页的形式将 HTTP response 返回到您的浏览器中。最终,Web 浏览器处理 HTTP response 中动态产生的HTML网页,就好像在处理静态网页一样。
编译阶段:servlet容器编译servlet源文件,生成servlet类初始化阶段:加载与JSP对应的servlet类,创建其实例,并调用它的初始化方法执行阶段:调用与JSP对应的servlet实例的服务方法销毁阶段:调用与JSP对应的servlet实例的销毁方法,然后销毁servlet实例
JSP作用和Servlet分工
* Servlet:> 缺点:不适合设置html响应体,需要大量的response.getWriter().print("<html>")> 优点:动态资源,可以编程。* html:> 缺点:html是静态页面,不能包含动态信息> 优点:不用为输出html标签而发愁* jsp(java server pages):> 优点:在原有html的基础上添加java脚本,构成jsp页面。* JSP:> 作为请求发起页面,例如显示表单、超链接。> 作为请求结束页面,例如显示数据。* Servlet:> 作为请求中处理数据的环节。
参考:http://blog.csdn.net/qq_25827845/article/details/52231724
JSP 语法
脚本程序
脚本程序可以包含任意量的Java语句、变量、方法或表达式,只要它们在脚本语言中是有效的。
脚本程序的语法格式:
<% 代码片段 %>
JSP声明
一个声明语句可以声明一个或多个变量、方法,供后面的Java代码使用。在JSP文件中,您必须先声明这些变量和方法然后才能使用它们。
JSP声明的语法格式:
<%! declaration; [ declaration; ]+ ... %>
JSP表达式
一个JSP表达式中包含的脚本语言表达式,先被转化成String,然后插入到表达式出现的地方。
由于表达式的值会被转化成String,所以您可以在一个文本行中使用表达式而不用去管它是否是HTML标签。
表达式元素中可以包含任何符合Java语言规范的表达式,但是不能使用分号来结束表达式。
JSP表达式的语法格式:
<%= 表达式 %>
JSP注释
<%-- 该部分注释在网页中不会被显示--%>
JSP指令
JSP指令用来设置与整个JSP页面相关的属性。
JSP指令语法格式:
<%@ directive attribute="value" %>
JSP行为
JSP行为标签使用XML语法结构来控制servlet引擎。它能够动态插入一个文件,重用JavaBean组件,引导用户去另一个页面,为Java插件产生相关的HTML等等。
行为标签只有一种语法格式,它严格遵守XML标准:
<jsp:action_name attribute="value" />
行为标签基本上是一些预先就定义好的函数,下表罗列出了一些可用的JSP行为标签:
JSP内置对象
JSP 标准标签库(JSTL)
JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。
JSTL支持通用的、结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签。 除了这些,它还提供了一个框架来使用集成JSTL的自定义标签。
核心标签是最常用的JSTL标签。引用核心标签库的语法如下:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
其他若干标签,参考http://www.runoob.com/jsp/jsp-jstl.html
- [JavaWeb基础]jsp
- JavaWeb 之 JSP基础
- JavaWeb基础02----JSP
- javaweb基础(JSP)
- JavaWeb基础(servlet+jsp)
- javaWeb jsp基础
- JavaWeb——JSP基础
- 【JavaWeb】(1)JSP基础语法
- 10011---JavaWeb基础---JSP概述
- 10013--JavaWeb基础--JSP语法
- 10016---JavaWeb基础--JSP指令
- JavaWeb开发基础--JSP入门
- Javaweb学习之JSP基础
- JavaWeb之JSP基础小结
- 5.JavaWeb基础 JSP内置对象
- JavaWeb开发之十一:JSP基础语法
- JavaWeb开发之十一:JSP基础
- JavaWeb-开发基础-web、环境、jsp、servlet
- python学习之Geospatial Analysis
- 插值(Interpolation)
- Java设计模式--单例模式
- 带有redis缓存的修改,对redis的操作解析
- dos 坏境搭建
- [JavaWeb基础]jsp
- C++双向链表
- 1018. 锤子剪刀布 (20)
- 设计一个有getMin功能的栈 程序员代码面试指南
- MyBatis学习总结(六)——调用存储过程
- 2017.10.19总结
- C++循环队列
- 约瑟夫环时间复杂度O(n)解法
- java网络编程—Reactor