jsp笔记1
需积分: 0 174 浏览量
更新于2022-08-08
收藏 276KB DOCX 举报
【JSP基础详解】
JSP(Java Server Pages)是一种基于Java技术的动态网页开发工具,它的全称为Java服务器页面。其主要用途在于简化HTML页面与Java代码的结合,以更高效地实现服务器端数据处理和返回。在Servlet编程中,直接生成HTML页面较为繁琐,而JSP提供了一种更加简便的方式。
### JSP访问方式
JSP文件存储于Web应用的Web-INF目录下,其访问方式与HTML页面类似,通过URL可以直接访问。例如,一个名为`b.jsp`的文件,其访问地址为`http://ip:port/工程路径/b.jsp`。
### JSP的本质
JSP本质上是一个Servlet程序。当首次访问JSP页面时,Tomcat服务器会将其转换为Java源文件,并编译为`.class`字节码。这个生成的Java类继承自`Httpjspbase`,而`Httpjspbase`类又间接继承自`HttpServlet`。因此,JSP页面翻译后实际上是一个实现了Servlet接口的类。
### JSP的`page`指令
`page`指令用于设置JSP页面的一些关键属性和行为:
1. `language`属性:指定JSP页面转换后的Java源代码使用的语言,默认是Java。
2. `contentType`属性:定义了JSP页面返回的数据类型,例如`text/html;charset=UTF-8`。
3. `pageEncoding`属性:设置JSP页面文件本身的字符编码。
4. `import`属性:与Java源代码类似,用于导入所需的类库或包。
### JSP脚本元素
1. **声明脚本**:`<%! 声明 java 代码 %>`,可用来定义JSP翻译成的Java类的属性、方法、静态代码块和内部类。
2. **表达式脚本**:`<%=表达式%>`,用于在页面上输出数据,其内容会被翻译到`_jspService`方法中,并通过`out.print()`输出。
3. **代码脚本**:`<% java 语句 %>`, 允许在JSP页面中直接编写Java语句,这些语句同样会在`_jspService`方法中执行。
### JSP的其他特性
1. `autoFlush`属性:控制`out`输出流缓冲区满后是否自动刷新,默认为true。
2. `buffer`属性:设定`out`输出流的缓冲区大小,默认为8KB。
3. `errorPage`属性:定义JSP页面发生错误时跳转的错误页面路径。
4. `isErrorPage`属性:标识当前页面是否为错误处理页面,可获取异常信息。
5. `session`属性:决定访问JSP页面时是否创建`HttpSession`对象,默认为true。
6. `extends`属性:定制JSP翻译后Java类的父类。
### JSP注释
1. HTML注释:`<!-- 这是HTML注释 -->`,在JSP中仍有效。
2. JSP注释:`<%-- 这是JSP注释 --%>`,在翻译成Java源代码时会被忽略。
3. Java注释:`// 单行注释`或`/* 多行注释 */`,在JSP中保留,但不会在HTML输出中显示。
JSP作为一种服务器端技术,提供了便捷的HTML与Java代码的集成方式,通过`page`指令和各种脚本元素,我们可以定制页面的行为并轻松处理服务器端逻辑。同时,通过注释机制,我们可以在不影响页面渲染的情况下添加开发者信息。理解和掌握这些基础知识对于进行JSP开发至关重要。
被要求改名字
- 粉丝: 37
- 资源: 315
最新资源
- Java毕业设计-springboot-vue-工作量统计系统(源码+sql脚本+29页零基础部署图文详解+29页论文+环境工具+教程+视频+模板).zip
- Java毕业设计-springboot-vue-高校疫情防控web系统(源码+sql脚本+29页零基础部署图文详解+31页论文+环境工具+教程+视频+模板).zip
- 基于模型的六轴机器人阻抗控制算法演示与仿真参数设置指导(matlab simscape仿真机器人模型自定义切换,跟踪轨迹展示及算法学习),基于模型的六轴机器人阻抗力控制算法(matlab simsca
- Java毕业设计-springboot-vue-工资信息管理系统(源码+sql脚本+29页零基础部署图文详解+25页论文+环境工具+教程+视频+模板).zip
- 基于PaddlePaddle的眼疾识别项目(包含训练集、测试集、模型权重)
- Java毕业设计-springboot-vue-航班进出港管理系统(源码+sql脚本+29页零基础部署图文详解+29页论文+环境工具+教程+视频+模板).zip
- 基于ABAQUS、Opensees和Perform3d的结构易损性评估与IDA曲线绘制:matlab函数调用与地震波选波调幅实战指南,ABAQUS 、Opensees、Perform3d IDA曲线
- Java毕业设计-springboot-vue-果蔬作物疾病防治系统(源码+sql脚本+29页零基础部署图文详解+30页论文+环境工具+教程+视频+模板).zip
- Java毕业设计-springboot-vue-滑雪场管理系统(源码+sql脚本+29页零基础部署图文详解+27页论文+环境工具+教程+视频+模板).zip
- Java毕业设计-springboot-vue-家教管理系统(源码+sql脚本+29页零基础部署图文详解+32页论文+环境工具+教程+视频+模板).zip
- Java毕业设计-springboot-vue-驾校预约学习系统(源码+sql脚本+29页零基础部署图文详解+34页论文+环境工具+教程+视频+模板).zip
- 数据采集系统:下位机与上位机协同工作,高性能模数转换与灵活配置滤波功能,数据采集系统下位机与上位机代码 下位机采用开发板来完成 AD9226模数转芯片,最大65MHz采样,12bit量化 双通
- Java毕业设计-springboot-vue-集团门户网站(源码+sql脚本+29页零基础部署图文详解+33页论文+环境工具+教程+视频+模板).zip
- 蓝桥杯Java历年真题及其解析.docx
- Java毕业设计-springboot-vue-教师薪酬管理系统(源码+sql脚本+29页零基础部署图文详解+32页论文+环境工具+教程+视频+模板).zip
- Java毕业设计-springboot-vue-教学辅助系统(源码+sql脚本+29页零基础部署图文详解+31页论文+环境工具+教程+视频+模板).zip