JavaScript和JSP的区别?
名字:
JS:JavaScript
JSP:Java Server Pages
执行过程:JSP先翻译,翻译成Servlet执行
如: test.jsp 要变成 test_jsp.java 然后编译成 test_jsp.class
而 test_jsp.java 本身就是一个servlet.
所以 jsp只是servlet的一个变种,方便书写html内容才出现的。
servlet是根本,所有jsp能做的,servlet全能做。
JS:是一种基于对象的客户端脚本语言。目的是解决服务器端语言。
如:Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
JS可以直接嵌入到html代码中进行解析执行,
非常简单易学,可以产生很多动态的效果。
形象比较:JS是在客户端执行的,需要浏览器支持JavaScript。JSP是在服务器端执行的,
需要服务器上部署支持Servlet的服务器程序。JS代码能够直接从服务器
上download得到,对外是可见的,jsp(和翻译后的Servlet代码)是对外不可见的。
JS和JSP相比较:虽然JS可以再客户端动态生成HTML,但是很难与服务器交互,因此不能提供复杂
的服务。
如:访问数据库和图像处理等等。
JSP在HTML中用<% %>里面实现。JS在HTML中用<Scrippt></Script>实现。
执行过程:
JSP:
1、JSP文件在用户第一次请求时,会被编译成Servlet,然后由这个Servlet处理
用户的请求,所以Servlet可以看成是运行时的Servlet。
2、JSP容器也就是Servlet容器管理JSP页面生命周期分为两个阶段,即转换阶段和执行阶段。
3、转换阶段:当有一个对JSP页面的请求到来时,JSP容器检查JSP页面的语法是否正确,将JSP页面
转换为Servlet源文件,然后调用javac命令编译Servlet源文件生成字节码文件。
4、执行阶段:Servlet容器加载转换后的Servlet类。
JS:
JavaScript 通常是运行在前台,即运行于用户浏览器的,通常不需要服务器的后台支持(AJAX交
互例外),混合在HTML中的JavaScript脚本程序直接被浏览器解释执行,以提高页面的美观性和
UI操作响应速度为基本目标。(运行位置的不同)
运行位置不同:
JSP运行在后台服务器上,混合在HTML中的java程序段用于控制HTML的动态生成,并且通常负责调用后台
数据库中的数据,形成能够根据使用情况的变化的,具有丰富数据交互效果的页面。
JavaScript和JSP的区别?的更多相关文章
- javascript、JSP、JS有什么区别和联系
js是javascript的缩写.以下是JSP与JS的区别和联系: 名字:JS:JavaScriptJSP:Java Server Pages 执行过程:JSP先翻译,翻译成Servlet执行如: t ...
- JS和JSP的区别
最近很多同学在纠结于名词缩写之间的相似性,因此本人也来写一篇,讲讲JS和JSP的区别. SUN首先发展出SERVLET,其功能比较强劲,体系设计也很先进,只是,它输出HTML语句还是采用了老的CGI方 ...
- JavaScript、JSP、Java及javaEE
对JavaScript.JSP.Java及javaEE之间区别的理解 JavaScript和Java名字极为类似,相信不少的初学者或者准备学这些知识的人对于JavaScript.JSP.Java及Ja ...
- 如何打开JSP文件/JS和JSP的区别/Servlet的本质是什么,是如何工作的?
一:如何打开JSP文件 1.安装JAVA 2.安装TOMCAT——免费开源的JAVAWEB服务器 3.安装ECLIPSE 二:JS和JSP区别 名字: JS:JavaScript JSP:Java S ...
- a href=#与 a href=javascript:void(0) 的区别
a href="#"> 点击链接后,页面会向上滚到页首,# 默认锚点为 #TOP <a href="javascript:void(0)" onCl ...
- 超链接的#和javascript:void(0)的区别
转载于:http://www.uw3c.com/cssviews/css12.html 在工作中,如果我们想把a标签中的链接置成空链接,我们一般会用两种方法: 1 <a href=" ...
- javascript中&&和||的区别
javascript中&&和||的区别 &&和||操作符两边不是布尔类型时,系统会转换成布尔类型值再计算(空字符串.null.0都会被转成false),结果本身不变. ...
- 转载 a href=#与 a href=javascript:void(0) 的区别
a href="#"> 点击链接后,页面会向上滚到页首,# 默认锚点为 #TOP <a href="javascript:void(0)" onCl ...
- javascript中=、==、===区别详解
javascript中=.==.===区别详解今天在项目开发过中发现在一个小问题.在判断n==""结果当n=0时 n==""结果也返回了true.虽然是个小问题 ...
随机推荐
- python 元组分组并排序
# -*- coding: utf-8 -*- # @Time : 2018/8/31 14:32 # @Author : cxa # @File : glomtest.py # @Software: ...
- jumpserver安装教程
centos7系统一步一步安装jumpserver 参照官方文档,查找了百度所有的文档,基本上都是按照官方的文档操作的 官方文档点我-> 安装jumpserver需注意: 1:网络环境要好,有的 ...
- 详述Java对象创建
Java是一门面向对象的语言,Java程序运行过程中无时无刻都有对象被创建出来.在语言层面上,创建对象(克隆.反序列化)就是一个new关键字而已,但是虚拟机层面上却不是如此.我们看一下在虚拟机层面上创 ...
- [洛谷P2783]有机化学之神偶尔会做作弊
第一次做出来黑题祭 虽然感觉难度其实并不到黑题的难度 题解: 其实这道题并没用什么特别的知识,只是Tarjan求双联通分量和LCA的结合. 所以,我们可以很显然的发现(如此恶劣的词汇,逃 这道题其实就 ...
- Redux-DevTools 安装
以下以Chrome为准. 首先,从Chrome Web Store(需要***支持)下载chrome 插件 Redux DevTools. 使用方式有两种: 一种只需在代码createStore中添加 ...
- Struts 2 - Hello World Example
As you learnt from the Struts 2 architecture, when you click on a hyperlink or submit an HTML form i ...
- bzoj 4551
4551 思路: 乱搞: 代码: #include <cstdio> #include <cstring> #include <iostream> #include ...
- 解决Python爬虫使用requests包控制台输出乱码问题
输出爬取的信息为乱码! 解决办法 爬取下来的编码是ISO-8859-1格式,需要转化为utf-8格式,加一句response.encoding = "utf8"
- 相等(==)、严格相等(===)、NaN、null、undefined、空和0
(===)如果两个引用值指向同一个对象.数组.或函数,则他们是相等的.如果指向不同的对象,则他们是不相等的,尽管两个对象具有完全一样的属性. (==)如果其中一个值是true,则将其转换为1再进行比较 ...
- Qt中两种定时器用法
在Qt中使用定时器有两种方法,一种是使用QObiect类的定时器:一种是使用QTimer类.定时器的精确性依赖于操作系统和硬件,大多数平台支持20ms的精确度. 1.QObject类的定时器 QObj ...