JSP是什么?
来源:互联网 发布:运城广电网络二维码 编辑:程序博客网 时间:2024/06/06 12:42
经常有初学者学习了一段JSP和Servle之后,就会问我:“jsp是什么啊,之前学的是Java,我们都知道写一个Java程序,最直观的是写一个类,为什么到JSP的时候只能有一点java片段,它到底算什么啊?”每当遇到这种问题,我觉得总是有点不好回答,因为简短的回答(JSP就是Java类)怕他不明白,但是想让他明白吧还挺费劲,所以把我对这个问题的理解写下来。
在没有真正说JSP本质之前我们先看一个很简单的JSP页面
(图1 JSP代码)
JSP的外在表现形式就是把Java的代码嵌入到html的页面中,但是html的标签只要在浏览器里就可以被解析出来,但嵌入的Java(脚本)怎么能够运行起来呢,因此就需要服务端(Servlet容器)的支持。JSP能够被执行基本分成这么几个步骤:
1、 JSP页面要被容器转换成一个Java类(Java源代码,如图2所示)。Java的类(class)基本上只要学过java基本知识的都能够知道,写一个java程序必须写一个类,而我们的JSP也是一样要从一个页面转换成Java类,这就是JSP的本质了,就是一个Java类。
2、 JSP转换成Java类需要编译成一个字节码文件。这一点只要学过Java基本知识的同样能够理解,Java的源代码需要编译,形成一个后缀为class的文件(Java字节码文件)。
3、 字节码文件需要被虚拟机加载到内存中解释运行。运行这个字节码文件就会向客户端(浏览器)发送html标签(图3),留言器一边接收服务端发送过来的html标签,一边解析最终形成一个完整的页面内容,这个是JSP转换成的那个类(class)的主要工作,就是向客户端输出html标签,这也是为什么MVC中JSP作为视图的原因。
(图2 JSP转换成的Java代码部分—可以再eclipse相关目录中找到)
(图3 执行该JSP客户端html标签)
其中图3中的html标签都是执行图2中的java代码输出到浏览器中的内容,具体浏览器中的呈现我就不截图了,因为大家都知道h1的样子。- JSP是什么?
- JSP 是什么?
- JSP是什么?
- JSP是什么
- jsp是什么
- jsp是什么?
- JSP到底是什么?
- JSP是什么和/ASP是什么?JSP是什么?两者区别?
- jsp引擎是什么?是什么工作原理?
- JSP指令是什么?JSP包含哪些指令?
- jsp 和 java的主要区别是什么?
- jsp有哪些动作?作用分别是什么?
- jsp有哪些动作?作用分别是什么?
- jsp有哪些动作?作用分别是什么?
- jsp有哪些动作?作用分别是什么?
- jsp 有哪些动作 ? 作用分别是什么 ?
- JSP有哪些动作?作用分别是什么?
- jsp的动作和作用分别是什么?
- linux 启动-shell进程由来
- .net中response.write会改变css布局的问题
- python 获取excel中数据
- 2012西电攻防溢出第一题
- unity通过WWW方式加载.obj文件
- JSP是什么?
- Linux Oracle服务启动&停止脚本与开机自启动
- 后台运行,结束一个任务再开启一个任务
- ios 集成支付宝 报错:rsa_private read error : private key is NULL
- 在ACE中如何获得本地的ip地址
- 一个简单的购物系统
- SUMO仿真快速入门系列五:SUMO与NS2连接
- 找出两个整数中的较小者(重在使用return从函数中返回一个值)
- 采用C++的ACE库实现的一个通用的C/S架构通信程序(最终版)