JSP 基本知识
文章目录
一、JSP规范介绍
-
来自于JAVAEE规范中一种
-
JSP规范制定了如何开发JSP文件代替响应对象将处理结果写入到响应体的开发流程
-
JSP规范制定了Http服务器应该如何调用管理JSP文件
二、响应对象存在弊端
-
适合将数据量较少的处理结果写入到响应体
-
如果处理结果数量过多,使用响应对象增加开发难度
三、JSP文件优势
-
JSP文件在互联网通信过程,是响应对象替代品.
-
降低将处理结果写入到响应体的开发工作量降低处理结果维护难度
-
在JSP文件开发时,可以直接将处理结果写入到JSP文件不需要手写out.print命令,在Http服务器调用JSP文件时,根据JSP规范要求自动的将JSP文件书写的所有内容通过输出流写入到响应体
四、HTML文件与JSP文件区别
-
作为资源文件类型不同
HTML文件属于静态资源文件,其相关命令需要在浏览器编译并执行的.
JSP文件属于动态资源文件,其相关命令需要在服务端编译并执行的
-
调用形式不同
如果浏览器访问HTML文件,此时Http服务器直接通过一个输出流
将HTML文件中所有的内容写入到响应体
如果浏览器访问JSP文件。此时Http服务器根据JSP规范来操作JSP文件编辑---->编译----->调用
五、Http服务器调用JSP文件步骤:
1.Http服务器将JSP文件内容【编辑】为一个Servlet接口实现类(.java)
2.Http服务器将Servlet接口实现类【编译】为class文件(.class)
3.Http服务器负责创建这个class的实例对象,这个实例对象就是Servlet实例对象
4.Http服务器通过Servlet实例对象调用_jspService方法,将jsp文件内容写入到响应体
六、Http服务器【编辑】与【编译】JSP文件位置:
在【work】下看到这个证据
C:\Users[登录windows系统用户角色名].IntelliJIdea2018.3\system\tomcat[网站工作空间]\work\Catalina\localhost\【网站别名】\org\apache\jsp
七、在JSP文件中如何书写Java命令
1.执行标记
<% %>
2.命令格式
<% int a =10; %> 声明局部变量
<% boolean flag = 30 >= 40; %> Java中表达式(数学表达式,关系表达式,逻辑表达式)
<%
if(判断条件){
}else{
}
while(){
}
%> 书写控制语句
3.命令作用
通知Tomcat将输出标记中【变量的值】或则输出标记中【表达式运算结果】写入到响应体
八、如何将Servlet中doGet/doPost方法执行结果交给JSP文件输出
-
JSP文件被访问时,并不是JSP文件在执行。而是对应的Servlet在执行
-
自定义Serlvet接口实现类与JSP文件之间调用关系,等同于两个Servlet之间调用关系
-
自定义Servelt接口实现类与JSP文件之间可以通过重定向方案或则请求转发方案进行调用考虑到运行效率问题,一般采用【请求转发】
-
自定义Servlet接口实现类可以通过请求作用域对象将共享数据交给JSP来输出到响应体