JSP
来源:互联网 发布:skb平面设计方案优化 编辑:程序博客网 时间:2024/05/07 12:03
jsp页面发布到tomcat中后实际上会被翻译成.java文件和.class文件放在了apache-tomcat-7.0.30\work\Catalina\localhost\jspDemo_mine\org\apache\jsp目录下了,你点进去查看一下,再对比一下你自己写的jsp文件,然后你就秒懂jsp是底层怎么回事了。
JSP技术简介
JSP是Java Server Page的缩写,它是Servlet的扩展,它的作用是简化网站的创建和维护。
JSP是HTML代码与Java代码的混合体。
JSP文件通常以JSP或JSPX的扩展名。
JSP拥有自己的语法。
JSP形式上像HTML,但本质上是Servlet。
JSP的出现,使得将Web开发中的HTML与业务逻辑代码有效分离成为可能。通常JSP只负责生成动态的HTML文档,而业务逻辑由其他Java组件如JavaBean来实现。JSP可以通过Scriptlet来访问这些组件。
<% %>
ContentType与pageEncoding的区别:
pageEncoding是jsp文件本身的编码 ,把jsp文件编译成java的时候给编译器用的 。
contentType的charset是指服务器发送给客户端时的内容编码 ,是浏览器解析网页的时候用的
如果两个任意设置了其中一个,另一个即会与此保持一致。但,contentType除可以设置charset外,还可以设置MIME类型,如text/html
1、查找与JSP文件对应的Servlet,如果已经存在,就调用它的服务方法。
2、如果与JSP对应的Servlet不存在,就解析文件系统中的JSP文件,将它翻译成Servlet源文件,接着把Servlet源文件编译成Servlet类,然后再去初始化并运行Servlet。
以下是经过翻译的JSP文件,可见在它的服务方法中存在以下对像
PageContext pageContext = null;
HttpSession session = null;
ServletContext application = null;
ServletConfig config = null;
JspWriter out = null;
Object page = this;
JspWriter _jspx_out = null;
PageContext _jspx_page_context = null;
JSP语法:
JSP指令。
<%@ 指令名 属性=“值”%>
JSP声明。成员变量,或是成员方法.
<%! …. %>
Java程序片段。不论有多少这样的代码块,都将包含_jspSerivice方法中。
<% … %>
Java表达式。-快速输出信息. _jspSerivice
<%= …%>
JSP隐含对像。
pageContext,request,response,session,config,application,out,page
JSP指令-page:
Page指令-用于指定所使用的语言,及导入的包。
属性说明:
language – 示例:language=“java”
import -如: (注意多个引用之间使用逗号分开。)
<%@ page import=“java.util.*,java.sql.*”%> contentType – 指定响应结果的MIME类型。默认为text/html;charset=ISO-8859-1
session = true | false –指定jsp页面是否使用session.
errorPage = url – 指定当发生异常时转发到哪一个页面。
isErrorPage = true|false, - 表示此页是处理异常的页面。
pageEncoding – 设置页面的编码方式,此编码方式,会自动应用到contentType中的charset上,如果没有设置content-Type的话。显示时以content-Type为准。建议这两个值应该设置一个或至少应该一致。建议设置content-Type
buffer = none | 8kb | sizeb – 设置页面缓冲区大小。-建议不要修改此值。
JSP指令-include:
JSP可以通过include指令来包含其他文件的内容,被包含的可以是JSP或html文件。
语法:
<%@ include file=“目标页面”%> -静态包含.
共享变量,共享request
<jsp:incluce.. JSP标签动态包含.
仅共享request
实际应用:
在开发中通常使用此功能包含一些不经常修改的页头和页脚。
JSP指令-taglib—标签库:
taglib指令,用于在页面上声明要使用的自定义标签。
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
uri – 指定自定义的标签的引用URI。
Prefix-指定使用时的前缀。
如:<c:out value=“hello”/>
此内容将在讲自定义标签时具体讲。
JSTL :java Standard Tag Lib
URL – 统一资源定位符
URI – 统一资源标识符.—XML namespace=“http://hncu.cn”
JSP声明:
JSP声明用于在JSP文件中声明成员变量和成员方法。
语法:
<%! int a = 100;
public void abc(){
}
%>
可以声明静态变量,也可以声明静态方法。可以多个JSP声明的代码块。
JSP的Java程序片段和JSP表达式:
<% //可以声明多个Java片段,它们都位于_jspService方法中。 int a = 90; %> <% out.print(a); //JspWriter %> <% for(int i=0;i<a;i++){ //注意JSP表达式不能用;号结束 %> <input type=“button“ value=“<%=i%>”><br/> <% } %>
- JSP
- JSP
- jsp
- JSP
- JSP
- jsp
- Jsp
- JSP
- jsp
- jsp
- jsp
- JSP
- JSP
- jsp
- jsp
- JSP
- jsp
- jsp
- 对集合的属性信息排序
- Superprime Rib_特殊的质数肋骨_usaco1.5_codevs2080_dfs
- 今天发现了css中的一个顺序问题
- 概要设计
- 大杀器xgboost指南
- JSP
- iOS开发iOS9界面适配利器:详解UIStackView,看这里就够了
- 出版社后台系统 的几个问题总结
- 寻找数组中出现次数超过一半的元素
- 中缀表达式转换成后缀表达式并求值
- 知识点汇总
- important website
- maven 依赖简介
- Performing stop of activity that is not resumed